<build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.1-20080129.223043-7</version> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> <!-- TestNg plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.4</version> <configuration> <suiteXmlFiles> <suiteXmlFile>testng.xml</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <addClasspath>true</addClasspath> <mainClass>com.jbe.core.Foo</mainClass> </manifest> </archive> </configuration> </plugin> </plugins> </build>
<parent> <relativePath>../pom.xml</relativePath> <version>0.1</version> <artifactId>foo-foo</artifactId> <groupId>foo</groupId> </parent> I also find that I have to include foo-b in my foo's pom.xml in order to compile even though, foo-a is dependent on foo-b and therefore must compile foo-b before foo-a. <dependencies> <dependency> <groupId>foo</groupId> <artifactId>foo-a</artifactId> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>foo</groupId> <artifactId>foo-b</artifactId> <version>${project.version}</version> <scope>compile</scope> </dependency> /dependencies> In addition, I have to add dependencies in all the pom.xml even if they have been specified in the parent pom.xml. Thanks, Karthik Krishnan krishnan.1000 wrote: > > Hi Wayne, > > I am sorry Wayne. I should have been more specific on the post. To answer > your first comment, and I do not wish to sound rude, but if I knew what I > was doing wrong, I would not have posted in the first place. > > 2. I am trying to assemble a jar of module Foo and Bar . I wish that I > create an executable jar with a defined main class and a classpath added > to MANIFEST.MF. So basically i want the to create foo.jar and bar.jar > containing all the dependencies. > > 3. I find that if i make the changes in Foo-A or FooB java classes, and > if i execute a mvn assembly:assembly, it does not build the FOO-A or FOO-B > in the .m2 repository before building Foo and Bar successfully again I > have to get around that by doing the following > > mvn install:install-file > -Dfile=/home/krishnan/project/foo-a/target/foo-a-0.1.jar -DgroupId=project > -DartifactId=foo-a -Dversion=0.1 -Dpackaging=jar -DgeneratePOM=true, the > solution I found by doing a search on one of the posts. > > and again for foo-b. I would like to avoid that and just have mvn > assembly:assembly do all this before creating foo.jar and bar.jar. > > > > Wayne Fay wrote: >> >> This list really works better if you post what you've done and then >> tell us why its not working the way you wanted, or an error message >> you got, etc. Looking at what you sent, I have no idea if it is >> working how you expect or not. >> >> Sending your pom and assembly.xml file is probably not going to give >> you the results you are hoping for. So, send a reply and be more clear >> about what you've got vs what you want etc. >> >> Wayne >> >> On 3/6/08, krishnan.1000 <[EMAIL PROTECTED]> wrote: >>> >>> Hi, >>> >>> I am a Maven newbie and I hope this is not a stupid question. I am >>> trying >>> to create two Maven assembly jars for modules Foo and Bar. My project -- >>> | >>> |------- Bar >>> |------- Foo >>> |--------Foo-A >>> |------- Foo-B >>> >>> >>> This is my project structure. In this project, FOO-A is dependent on >>> Foo-B >>> and Bar ,Foo are dependent upon FOO-A. I am trying to build assembly >>> jars >>> for both the for both Foo and Bar modules. Can you please help me? >>> >>> My project pom is as follows. >>> >>> <modules> >>> <module>Bar</module> >>> <module>Foo</module> >>> <module>Foo-A</module> >>> <module>Foo-B</module> >>> </modules> >>> >>> <dependencies> >>> <dependency> >>> <groupId>log4j</groupId> >>> <artifactId>log4j</artifactId> >>> <version>1.2.13</version> >>> <scope>compile</scope> >>> </dependency> >>> >>> ...... >>> </dependencies> >>> >>> <build> >>> <plugins> >>> <plugin> >>> <artifactId>maven-assembly-plugin</artifactId> >>> <configuration> >>> <descriptors> >>> <descriptor>assembly.xml</descriptor> >>> </descriptors> >>> <tarLongFileMode>gnu</tarLongFileMode> >>> </configuration> >>> </plugin> >>> </build> >>> >>> <pluginRepositories> >>> <pluginRepository> >>> <id>apache.snapshots</id> >>> <url>http://people.apache.org/repo/m2-snapshot-repository/</url> >>> </pluginRepository> >>> </pluginRepositories> >>> >>> My assembly.xml >>> >>> <assembly> >>> <id>jar-with-dependencies</id> >>> <formats> >>> <format>jar</format> >>> </formats> >>> <includeBaseDirectory>false</includeBaseDirectory> >>> <fileSets> >>> <fileSet> >>> <directory>target/classes</directory> >>> <outputDirectory>/</outputDirectory> >>> </fileSet> >>> </fileSets> >>> <dependencySets> >>> <dependencySet> >>> <outputDirectory>/</outputDirectory> >>> <unpack>false</unpack> >>> <scope>runtime</scope> >>> </dependencySet> >>> </dependencySets> >>> </assembly> >>> >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/Maven-Assembly-for-MultiModule-project-tp15885942s177p15885942.html >>> Sent from the Maven - Users mailing list archive at Nabble.com. >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>> For additional commands, e-mail: [EMAIL PROTECTED] >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> >> > > -- View this message in context: http://www.nabble.com/Maven-Assembly-for-MultiModule-project-tp15885942s177p15890673.html Sent from the Maven - Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]