That's kind of what I am trying to do right now as well. The only catch to that is that the full "library.jar" file contains extra classes that i don't want in it.
So at the moment, my plan is to : a) Build library.jar with a classifier DO_NOT_CONSUME which contains all the classes. b) Use the dependency:unpack in the sub modules to selectively unpack the resources I want to have in each module and reassemble them accordingly. It's a very ugly/clunky solution, and wish I had a better option. If you have any brilliant ideas how to improve, I'd love to hear them. Thanks, Eric On Wed, May 18, 2016 at 3:09 PM, Matthew Piggott <mpigg...@sonatype.com> wrote: > Have your common code ("library.jar") in one module. Then have the other > modules (secured, unsecured, etc) declare it as a dependency, you can use > the maven shade plugin > <https://maven.apache.org/plugins/maven-shade-plugin/> to bundle the > dependencies into the jar. > > > > On 18 May 2016 at 14:48, Eric B <ebenza...@gmail.com> wrote: > >> Hi Matthew, >> >> Can you please expand on your concept? It is tickling something in the >> back of my mind but I just can't seem to grasp it precisely... >> >> Thanks, >> >> Eric >> >> On Wed, May 18, 2016 at 1:17 PM, Matthew Piggott <mpigg...@sonatype.com> >> wrote: >> >>> Have one module with the common code then create other modules which >>> shade in the common code dep. >>> >>> On 18 May 2016 at 12:48, Anton Tanasenko <atg.sleepl...@gmail.com> >>> wrote: >>> >>>> Hi Eric, >>>> Every eclipse project must reside in its own dir, it doesn't allow >>>> mixing multiple projects in the same directory. >>>> Eclipse also doesn't allow storing any of its resources outside of >>>> their respective project's dir. >>>> >>>> So you should definitely convert your project into a proper multimodule >>>> build. There is no way your setup will work correctly in eclipse otherwise. >>>> >>>> 2016-05-18 19:09 GMT+03:00 Eric B <ebenza...@gmail.com>: >>>> >>>>> Sure - but the problem is that they all use the same sources. And >>>>> refactoring the code base into 4 separate modules is not really an option. >>>>> >>>>> Right now I'm playing around with poms in subfolders that use : >>>>> <sourceDirectory>${basedir}/..</sourceDirectory> >>>>> >>>>> but that means I have to override all the defaults in the maven pom, >>>>> which is a royal nuissance. And I'm not even convinced that all plugins >>>>> will work properly. >>>>> >>>>> Thanks, >>>>> >>>>> Eric >>>>> >>>>> >>>>> On Wed, May 18, 2016 at 11:51 AM, Jeff Jensen <jjen...@apache.org> >>>>> wrote: >>>>> >>>>>> Best is to move them to 4 separate modules/directory structures. >>>>>> Then it will work without issues. >>>>>> >>>>>> On Wed, May 18, 2016 at 10:36 AM, Eric B <ebenza...@gmail.com> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> I am migrating a legacy app to maven and am having miserable time >>>>>>> with one module in particular. The way the Ant script worked is that it >>>>>>> built 3 or 4 artifacts from the same code base. >>>>>>> - secure-EJB.jar (some subset of classes) >>>>>>> - secure-EJB-client.jar (client EJB) >>>>>>> - unsecure-EJB.jar (another subset of classes) >>>>>>> - library.jar (regular java library with the bulk of classes, apart >>>>>>> from the EJB beans/facades) >>>>>>> >>>>>>> >>>>>>> At first I tried to get Maven to build everything via a single pom, >>>>>>> but that was just a recipe for disaster (and broke just about every >>>>>>> maven >>>>>>> convention I know), so I abandoned the concept altogether. >>>>>>> >>>>>>> Instead, I ended up with 4 poms - each building to a separate >>>>>>> target/ folder: >>>>>>> - pom.xml (parent pom, defines all the dependencies required for the >>>>>>> build, and includes the 3 next poms as modules) >>>>>>> - pom-ejb-secure.xml (inherits pom.xml) >>>>>>> - pom-ejb-unsecure.xml (inherits pom.xml) >>>>>>> - pom-jar.xml (inherits pom.xml) >>>>>>> >>>>>>> >>>>>>> pom.xml (snippet): >>>>>>> >>>>>>> <modelVersion>4.0.0</modelVersion> >>>>>>> <artifactId>ejb-pom</artifactId> >>>>>>> <groupId>org.myc</groupId> >>>>>>> <packaging>pom</packaging> >>>>>>> >>>>>>> >>>>>>> <modules> >>>>>>> <module>pom-securedEjb.xml</module> >>>>>>> <module>pom-unsecuredEjb.xml</module> >>>>>>> <module>pom-jar.xml</module> >>>>>>> </modules> >>>>>>> >>>>>>> <properties> >>>>>>> <skipTests>true</skipTests> >>>>>>> </properties> >>>>>>> ... >>>>>>> ... >>>>>>> >>>>>>> >>>>>>> From a command line build (ex: mvn clean deploy), everything works >>>>>>> properly, and as expected. All artifacts are independently built and >>>>>>> deployed, at the cost of recompiling the classes for each pom. >>>>>>> >>>>>>> However, I have no idea how to load/configure this in Eclipse/m2e >>>>>>> such that it sees the different artifacts produced, and more >>>>>>> importantly is >>>>>>> able to resolve against them when referenced in other open projects >>>>>>> (Enable >>>>>>> Workspace Resolution). >>>>>>> >>>>>>> When I import the maven project, it just "loads" the parent pom.xml >>>>>>> and does not recognize that there are modules that need to be >>>>>>> loaded/resolved as well. >>>>>>> >>>>>>> Is there anything I can do about this? >>>>>>> >>>>>>> Thanks, >>>>>>> >>>>>>> Eric >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> m2e-users mailing list >>>>>>> m2e-users@eclipse.org >>>>>>> To change your delivery options, retrieve your password, or >>>>>>> unsubscribe from this list, visit >>>>>>> https://dev.eclipse.org/mailman/listinfo/m2e-users >>>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> m2e-users mailing list >>>>>> m2e-users@eclipse.org >>>>>> To change your delivery options, retrieve your password, or >>>>>> unsubscribe from this list, visit >>>>>> https://dev.eclipse.org/mailman/listinfo/m2e-users >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> m2e-users mailing list >>>>> m2e-users@eclipse.org >>>>> To change your delivery options, retrieve your password, or >>>>> unsubscribe from this list, visit >>>>> https://dev.eclipse.org/mailman/listinfo/m2e-users >>>>> >>>> >>>> >>>> >>>> -- >>>> Regards, >>>> Anton. >>>> >>>> _______________________________________________ >>>> m2e-users mailing list >>>> m2e-users@eclipse.org >>>> To change your delivery options, retrieve your password, or unsubscribe >>>> from this list, visit >>>> https://dev.eclipse.org/mailman/listinfo/m2e-users >>>> >>> >>> >>> _______________________________________________ >>> m2e-users mailing list >>> m2e-users@eclipse.org >>> To change your delivery options, retrieve your password, or unsubscribe >>> from this list, visit >>> https://dev.eclipse.org/mailman/listinfo/m2e-users >>> >> >> >> _______________________________________________ >> m2e-users mailing list >> m2e-users@eclipse.org >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/m2e-users >> > > > _______________________________________________ > m2e-users mailing list > m2e-users@eclipse.org > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/m2e-users >
_______________________________________________ m2e-users mailing list m2e-users@eclipse.org To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/m2e-users