Hi, I'm having serious problems testing the demo.
The problem occurs when the "custom" maven tries to acces repositories. I'm sitting behind a firewall and must access repos through a proxy. This works fine in a normal maven setup (setting proxy in settings.xml) on the same machine. But the tycho-maven ignores proxy settings. I have added proxy settings in settings.xml in users home directory, tychos settings, and also java's proxy settings. Any idea what the problem is? Could it be a bug in plexus-classworlds-1.2-alpha-13.jar? thankful for any input /Henrik C:\tychodemo>c:/tycho/bin/mvn -U org.codehaus.tycho:maven-tycho-plugin:generate-poms -DgroupId=tycho.demo -Dtycho.targetPlatform="c:/Program Files/eclipse" C:\tychodemo>set M2_HOME=c:\tycho Listening for transport dt_socket at address: 4000 [INFO] Using c:\Program Files\eclipse eclipse target platform [INFO] Found 956 bundles [INFO] snapshot org.codehaus.tycho:maven-tycho-plugin:0.3.0-SNAPSHOT: checking f or updates from ibiblio [WARNING] repository metadata for: 'snapshot org.codehaus.tycho:maven-tycho-plug in:0.3.0-SNAPSHOT' could not be retrieved from repository: ibiblio due to an err or: Error transferring file [INFO] Repository 'ibiblio' will be blacklisted [INFO] snapshot org.codehaus.tycho:maven-tycho-plugin:0.3.0-SNAPSHOT: checking f or updates from baka [WARNING] repository metadata for: 'snapshot org.codehaus.tycho:maven-tycho-plug in:0.3.0-SNAPSHOT' could not be retrieved from repository: baka due to an error: Error transferring file [INFO] Repository 'baka' will be blacklisted [INFO] snapshot org.codehaus.tycho:maven-tycho-plugin:0.3.0-SNAPSHOT: checking f or updates from julien ..... Igor Fedorenko-4 wrote: > > Alexandre Sauvé wrote: >> Igor, >> >> That's great news! I will definitely try Tycho once I get an idea on >> the 'How'... > > Demo script > > http://docs.codehaus.org/display/M2ECLIPSE/tycho+technology+demo+script > > Some user docs > > http://docs.codehaus.org/display/M2ECLIPSE/Tycho+user+docs > > >> >> For me I am more interested in the 'manifest-first' as I have worked >> already with Felix and find that generating the manifest is not exactly >> the Eclipse way to go... So that being said it seems that you have most >> of everything in place for me to try! I would like some more >> information on what is missing/implemented in the artifact repository >> front. In your email you mention generating a target platform from a p2 >> repo, that is terrific! But how do you configure such a repo or have a >> p2 implementation fronting an existing Maven repo. If this work is >> currently on going how do you guys work with your artifact as of today? >> Is your target platform prebuilt and you point your maven build toward >> your target platform? Will your example cover this? > > Yes, example shows how to use existing eclipse installation as build > target platform, and I suggest this is what you use, at least initially, > to make sure other tycho functionality works first. > > Artifact repositories support is the least explored area, and the code > that I wrote for p2 support was really meant to prove possibility to run > p2 client inside maven runtime. It is only able to consume artifacts > from existing p2 repositories, but it is not able to generate p2 > repository. Also, tycho is not able to deploy build results into maven > artifact repository yet, not in a meaningful way, at least. > > So, consider yourself warned, and if you still want to try p2 repo > support, here are few pointers. m2e parent pom [1] has "e34-p2" profile > that defines few extra repositories with p2 layout as well as few > dependencyManagement dependencies that define p2 root installable units > (IUs). When running m2e with e34-p2 profile enabled but without > tycho.targetPlatform parameter, tycho will start p2 client and will > instruct it to download/create/configure eclipse installation with all > p2 IUs mentioned in the profile and all their dependencies. This eclipse > install will be created under generated name in ~/.m2/p2/targets folder > and will be used as build target platform. Also, you almost certainly > want to read some p2 documentation, but [2] is the only place I know. > > It is also almost certain that current prototype p2 repository support > will go away in its existing form. I have general dissatisfaction with > the current behaviour, but do not know how to make it better yet. > > > [1] > http://svn.sonatype.org/m2eclipse/trunk/org.maven.ide.eclipse.parent/pom.xml > [2] http://wiki.eclipse.org/Category:Equinox_p2 > > > > >> >> Looking forward to getting my hands dirty. >> Alex >> >> On Wed, Aug 20, 2008 at 3:44 PM, Igor Fedorenko <[EMAIL PROTECTED] >> <mailto:[EMAIL PROTECTED]>> wrote: >> >> Hello, Alexandre and others. >> >> First of all, I have to apologize for keeping Tycho development >> plans and progress to myself. I would like to thank you for bringing >> this up and will try to both explain our grand vision and what we >> already have or will have implemented in the near future. >> >> The big picture. Ultimately, we want tycho to be one-stop solution >> for doing Eclipse and OSGi development with Maven 2 (actually, 3, >> more on this later). We believe there are two distinct development >> workflows, when developer explicitly creates and maintains OSGi >> manifest and other Eclipse/OSGi metadata (we call it >> "manifest-first") and when OSGi metadata is generated by the build >> based on information available from pom.xml ("pom-first", >> naturally). We plan to support both development workflows. >> >> In manifest-first mode, tycho will use Eclipse/OSGi metadata and >> OSGi rules to calculate project dependencies dynamically, at build >> time. It will support all attributes supported by Eclipse OSGi >> resolver (Require-Bundle, Import-Package, Eclipse-GenericRequire, >> etc). It will use proper classpath access rules during compilation. >> It will support all projects supported by PDE and will use PDE/JDT >> project metadata where applicable. One important design goal is to >> make sure there is no duplication of metadata between pom.xml files >> and Eclipse/OSGi config files. In fact, tycho will support >> "pom-less" projects, where all required build metadata is derived >> from Eclipse/OSGi config files. >> >> In pom-first mode current plan is to provide similar set of features >> as in felix/bnd plugin, although I do not know if we'll be able to >> share any of the code. Additionally, Tycho will support >> Eclipse-friendlier Require-Bundle and will provide better support >> for developing multiple related OSGi bundles (I have not checked >> recently, so felix/bnd may already support these). >> >> In both modes tycho will support remote repositories both as source >> and sink for artifacts. We plan to support maven repositories, p2 >> and update sites, although level of support will likely vary. There >> will also be integration between m2e, tycho and pde to make the >> three work nicely together. >> >> So these are the plans... Disclaimer: plans do change! ;-) >> >> Now to what tycho is already able to do. Our first goal was to >> enable m2e continues build, so we started with manifest-first mode >> and I believe covered most of manifest-first features described >> above. Tycho already uses Eclipse/OSGi metadata to resolve project >> dependencies by OSGi rules and injects these dependencies into maven >> project model dynamically, at build time. It supports bundle, >> fragment, feature and update site projects (shame on me, but no RCP >> application yet). It knows how to run junit test plugins using OSGi >> runtime. Two big features that are still missing, are support for >> pom-less projects and work with artifact repositories, although >> there is prototype of target platform materialization from p2 >> repository already. There is also some rudimentary implementation of >> pom-first mode, but its usability outside of m2e build context is >> probably limited. Many smaller features are still missing and I am >> certain there are quite a few bugs too, but I think overall tycho >> code is in reasonably good shape already. >> >> Few words about relationship between maven and tycho. Tycho is not >> morphing into maven, but it provides maven extensions and plugins >> that enable maven to work with Eclipse/OSGi projects. Some of tycho >> functionality, especially OSGi dependency injection, relies on maven >> features only available in maven 3.0 which was very recently renamed >> from 2.1. Since there is no maven 3.0 release yet, current tycho >> distribution includes complete copy of maven 3.0-SNAPSHOT. >> >> >> As for contributing to the project... well, this would be really >> awesome . I think the best way to start is to try tycho and see what >> is missing to support your projects and development workflow. Then >> we can work together to implement missing features, fix bugs, etc. I >> have simple demo that shows how to use tycho to build set of simple >> projects and some user-level documentation. I will try to make this >> available later today. I will also provide tycho dev env setup >> steps, so you can start looking at the code if you want to. And >> tycho distribution is already available from [1] (looks for the >> latest .zip file) >> >> I hope it answers your questions, but feel free to ask more, >> especially if something is not clear or does not make sense. >> >> -- >> Regards, >> Igor Fedorenko >> >> >> [1] >> >> http://repository.sonatype.org/service/local/repositories/eclipse-snapshots/content/org/codehaus/tycho/tycho-distribution/0.3.0-SNAPSHOT/ >> >> >> Alexandre Sauvé wrote: >> >> Hi, >> >> My company has been using Maven 1 for a couple of years now and >> we are looking to make the transition over to the Maven 2 world >> (waiting for the best opportunity)! The UI for most of our >> applications are RCP based. The build process for the UI is >> using the PDE and is completely autonomous from our middle tier >> build with Maven. We are hoping that with the transition to >> Maven 2 there would be some new functionality to allow for >> RCP/OSGi development. Unfortunately we have found that we may >> not have waited long enough! There have been several options >> that we have looked at to obtain bridge Maven and our Eclipse >> Development: >> >> * *Building Eclipse Plugins with Maven 2 >> >> >> (http://www.eclipse.org/articles/article.php?file=Article-Eclipse-and-Maven2/index.html)* >> >> <http://www.eclipse.org/articles/article.php?file=Article-Eclipse-and-Maven2/index.html%29*> >> In this articles the authors describe in detail how they >> integrated Maven2 and Eclipse. One aspect of their >> approach that >> I did like was how they made use of the manifest file to >> define >> the dependencies for the project (similar to how Eclipse >> works); >> however they need to use the 'Required-Bundle' tags rather >> than >> the improved 'Import-Packages'. Though well documented this >> approach wasn't favoured as it did not offer the Mojos >> re-built in >> a repo (they just offer the code for the Mojos but they >> don't make >> their Mojos available) and the article was written in 2006. >> The >> company, Princeton software, was bought by IBM so it is hard >> to >> get a hold of the developers for the project. >> * *CodeHaus Maven PDE plugin >> (http://mojo.codehaus.org/pde-maven-plugin)* >> <http://mojo.codehaus.org/pde-maven-plugin%29*> This Mojo >> triggers >> the PDE build from Maven. Though this approach would be >> fairly >> straight forward in that the regular PDE mechanism can be >> used for >> building the RCP application there are several drawbacks we >> see >> related to the build occuring in 2 seperate build >> technologies: >> PDE doesn't offer any way to easily integrate Maven 2 report >> tooling into its build process (checkstyle, code coverage, >> ect.) >> PDE is another technology for our developers to learn (more >> Ant >> based build cycle) >> * *Felix Bundle Plugin for Maven >> >> (http://felix.apache.org/site/mavem-bundle-plugin-bnd.html)* >> <http://felix.apache.org/site/mavem-bundle-plugin-bnd.html%29*> >> This >> Mojo is based on the BND tooling. In this approach all the >> dependencies are specified in the POM and manifest is >> generated >> during the package lifecycle in Maven. There are specific >> commands to provide the 'Export-Package', >> 'Private-Package', etc. However the BND tooling will >> analyze the byte code to determine >> some information such as the 'Import-Packages'. Though this >> tooling works well for generating OSGi bundles it does not >> leverage the tooling available in Eclipse. Once you have >> your >> plugin working with its dependencies in Eclipse you then >> need to >> rework your POM to ensure that the manifest that is >> generated is >> equivalent to that which you now have in Eclipse. This is >> not >> always a trivial process. Given that limitation this is the >> process that is favoured at the moment. Some pros about >> this >> methodology: >> + What is nice about this approach is that everything is >> done in >> Maven allowing you to now hook all the Maven reporting >> plugins. >> + Leverage Maven 2 Repo for your dependent bundles (note >> that your >> bundles cannot be of the format of a jar within the bundle >> - they >> have to be more like regular jars to be used by Maven) >> + Generate target platform in Maven >> >> However after reading the article 'Jason Van Zyl Discusses >> Sonatype, The Eclipse Foundation and Maven' >> >> (http://www.infoq.com/news/2008/08/van-zyl-eclipse-sonatype-maven) >> we believe that Tycho seems to be the up and coming solution to >> bridging the world of OSGi and Maven. So I have done some >> research into Tycho and have some questions: >> >> * At the beginning of the Tycho development it was a set of >> plugins >> to provide building with the PDE compiler (as it >> understands the >> whole OSGi dependency/class loading issues), 'osgi-bundle' >> lifecycle, generation of POM, etc. Now it seems to have >> morphed >> into Maven 2.1? Is Tycho and M2Eclipse the basis of the >> development for Maven 2.1? >> * Will the new version be able to do everything with the >> manifest >> that Maven 2.0 does with the POM? Through the manifest be >> able to >> tell what dependencies are required? What if those >> dependencies >> are only through Import-Packages (with a version to make >> life >> easier)? Will the integration with the p2 enable M2Eclipse >> to >> determine which bundles supply a given package and add the >> required dependencie between the projects? >> * Will the p2 integration be on top of the existing Maven >> repo or a >> seperate repo to get bundles from? >> * What is the timeline/gameplan for Tycho development at this >> point? >> >> So as you can see we are really just starting out down this >> path. We would be willing to help with development if we find >> an area that we can contribute effectively into the project. >> However as of right now we just want a starting point to start >> getting our projects configured to using Tycho. Could you point >> us in the right direction? The ReadMe file in the release now >> is the one for the Apache Maven, so it doesn't really help with >> the configuration of a project using Tycho. Is it the same >> configuration as before? Should we be using a different version >> (previous version than 0.3.0)? >> >> Thanks, Any help you can give would be appreciated! >> Alex >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe from this list, please visit: >> >> http://xircles.codehaus.org/manage_email >> >> >> > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > > -- View this message in context: http://www.nabble.com/Fwd%3A-tycho---the-future-tp19055385p19308007.html Sent from the Maven Eclipse - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
