Hi there,

AlamedaMike wrote:
> Stefan, Meikel,
> 
> Thanks much for this. It looks very interesting.
> 
> Forgive a newb question but I just downloaded Maven for the first time
> 30 minutes ago. I read the "Maven in 5 minutes" doc, and executed:
> 
> mvn archetype:create -DgroupId=org.clojure  -DartifactId=clojure

This step doesn't actually specify that you are creating a Clojure 
project.  The groupId and artifactId here are names used in the project 
you are creating (typically they would be your own package namespace and 
the name of your project respectively).  As you have not specified the 
type of archetype, Maven has used the default 
"maven-archetype-quickstart", which creates a trivial Java project.  I'm 
not aware of any archetype for creating a Clojure project.

> followed by:
> 
> mvn package
> 
> All the tests passed. I then ran:
> 
> java -cp clojure-1.0-SNAPSHOT.jar  org.clojure.App
> 
> and got "Hello World" as the output.
> 
> My expectation is that one of the first two commands would go to a
> central repository and download a POM file based on the id parameter,
> which would in turn supply the data necessary to download the other
> dependencies necessary to build a complete set of clojure files.
> However, I'm just getting the 2,092 byte clojure jar file. What am I
> missing?

The clojure.jar file you have built here contains the trivial "Hello, 
World" Maven quickstart Java application.  It does not relate to Clojure 
at all, that is just the name you have given it.

Out of the box, Maven actually has no support for Clojure.  However, at 
this point, where you are just starting out with Maven (and when you 
might not actually need to explicitly compile your Clojure), it might be 
better to just leverage the dependency management by using the Maven Ant 
tasks from an Ant build, or use Ivy+Ant to grab the dependencies from 
the Maven repository.  That is, just use Maven or Ivy to grab the latest 
Clojure jar files and use the default on the fly compilation for your 
Clojure code.

If you do need to compile your Clojure code ahead-of-time (AOT), you 
will need a Maven plugin like:

http://github.com/talios/clojure-maven-plugin/tree/master

I've not used this plugin but it appears to be in the early stages. 
There is also:

http://github.com/dysinger/clojure-pom/tree/master

which appears to use the Maven antrun plugin to call the Clojure 
compiler, rather than implementing a full-blown Maven plugin.

Hope that helps,
Jason

-- 
Pulse - Continuous Integration made easy.
Does your project have a pulse?
Try it free at: http://zutubi.com

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to