|Re: [tycho-user] Newb question|
Thank You. On 14-03-07 03:56 PM, Igor Fedorenko wrote:
Tycho does not like pure Maven dependencies, it very much prefers OSGi bundles and Eclipse artifacts from P2 repositories. This applies to both projects that you build ("executor.jar" and "server.jar", in you case) and artifacts available from remote Maven repositories. You need to convert you pure-Maven projects and dependencies to OSGi bundles and make them available from a P2 repository before you'll be able to use them from eclipse-plugin projects. Usually I setup a separate project for my non-P2 stuff and use maven-bundle-plugin to generate OSGi metadata for me, then use pomDependencies=consider trick explain in  to make the "OSGi-ified" artifacts visible to the Tycho build. You can see how this is setup in m2e build, for example  (the pure-maven stuff is in m2e-maven-runtime subdirectory).  http://wiki.eclipse.org/Tycho/How_Tos/Dependency_on_pom-first_artifacts  http://git.eclipse.org/c/m2e/m2e-core.git/ -- Regards, Igor On 2014-03-07, 18:37, V. Mark Lehky wrote:Hello all. I have an eclipse-plugin project that builds successfully using ant. I would like to move this project to Maven (plus do a little cleanup of the existing code); some Internet link pointed me towards Tycho. I have gone through the EclipseCon Tycho Tutorial, and that seems to be working fine for me. There is, however, one thing that is not clear to me: dependencies to other projects. My entire project consists of three Eclipse projects: 1. "executor.jar" 2. "server.jar" 3. and the plugin I have a parent pom.xml which lists the above three modules as: 1. packaging = jar 2. packaging = jar 3. packaging = eclipse-plugin I defined all the Tycho specific stuff in the plugin pom, not the parent pom. Both the server.jar and my plugin depends on the "executor.jar" plus one other jar from a Maven repo. In the server.jar defining the dependencies in the pom is really easy, and that builds just fine. How do I do this in the plugin? From what I have read on the intranets so far, you do _not_ define the dependency in the pom, you _only_ define it in the the MANIFEST.MF? So far I tried just pointing to ../executor/target/executor-1.0.0-SNAPSHOT.jar but the mvn build fails to find this. Also, this does not seem very Maven-like. The normal Eclipse build also fails to find this. From some answers on stackoverflow I got the impression that I should copy the two dependent jars into the root of the project, and just point to them there. Is this the correct way of doing this? If it helps, my entire project is here: http://sourceforge.net/p/genieos/code-0/HEAD/tree/trunk/ TIA for any help.
Back to the top