It's all about the answers!

Ask a question

6.0.3 Server SDK and Tycho


Garrett Rolfs (8185) | asked Apr 11 '17, 11:18 p.m.

 We have been using Maven and Tycho to build our server extensions for 6.0.1 and earlier. With 6.0.3 and the SDK split, it appears the server SDK is packaged differently than the client SDK and the old combined SDK. The client and the old combined SDKs have artifacts.jar and content.jar at the root of the SDK. The new server SDK does not. The problem I'm seeing with Tycho is that it does not recognized the server SDK as a repository. 


  [exec] Caused by: java.lang.RuntimeException: org.eclipse.equinox.p2.core.ProvisionException: No repository found at file:/afs/rchland.ibm.com/lande/jazzadmin/packages/6.0.3/rtc-sdk/server.
     [exec] at org.eclipse.tycho.p2.target.TargetPlatformBuilderImpl.addP2Repository(TargetPlatformBuilderImpl.java:253
To see if different error messages would be generated I copied the client SDK's artifacts.jar and content.jar  jars into the server. I did get a different errors.

     [exec] Caused by: java.lang.RuntimeException: "No solution found because the problem is unsatisfiable.": ["Unable to satisfy dependency from com.ibm.stg.rtc.ext 17.1.0 to bundle com.ibm.team.process.service 0.0.0.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext 17.1.0 to bundle com.ibm.team.repository.service 1.0.2.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext 17.1.0 to bundle com.ibm.team.workitem.service 2.1.0.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext 17.1.0 to bundle com.ibm.team.scm.service 3.0.2.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext 17.1.0 to bundle com.ibm.team.filesystem.service.workitems 3.0.2.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext.common 17.1.0 to bundle com.ibm.team.process.service 1.0.200.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext.common 17.1.0 to bundle com.ibm.team.workitem.service 2.1.0.", "Unable to satisfy dependency from com.ibm.stg.rtc.ext.common 17.1.0 to bundle com.ibm.team.repository.service 1.0.2.", "No solution found because the problem is unsatisfiable."]


So now it appears Tycho recognizes it as a repository. Does anyone have suggestions on the proper way to use the server SDK with Tycho? As an aside the server SDK worked fine as target platform within Eclipse's PDE perspective.

Thank you.

One answer



permanent link
Garrett Rolfs (8185) | answered May 05 '17, 6:56 p.m.

 Here is how I obtained a successful Tycho build.

  1. Created a PDE Feature Project in Eclipse (e.g 6.0.3 Server SDK)
  2. Listed all the features found on a 6.0.3 server.
  3. Formatted the list as XML and added to the feature.xml.
  4. Removed any entries that were not resolved to the SDK. For example the Enterprise Extensions are not included in the SDK.
  5. Attempted to export the feature resolving any export errors due to missing plug-in dependencies. I did not include the following features:
    • org.eclipse.equinox.server.core
    • com.ibm.team.jazz.foundation.server.jfs.feature
    • com.ibm.team.reports.server.extracontent.jfs.feature 
  6. Once the export was successful, the newly created SDK p2 repository was used in the Tycho build. Tycho does a more thorough dependency analysis. I then iterated on the build error messages and used the Eclipse PDE environment to locate the missing plug-ins and their dependencies. Until a success compile was reached.
 There may be a better way, but I tried various suggestions and tools I found on the web that were unsuccessful. So far this was they only way I found to be successful with Tycho and 6.0.3 Server SDK.     

Your answer


Register or to post your answer.