Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tycho-user] Building a documentation index with Tycho

the building blocks for creating a mojo which calls a (forked) eclipse application should already be there (P2ApplicationLauncher). 

For example see
https://github.com/sonatype/tycho-extras/blob/master/tycho-p2-extras-plugin/src/main/java/org/eclipse/tycho/plugins/p2/extras/PublishFeaturesAndBundlesMojo.java 

Extending the OSGi runtime with additonal bundles should also be possible be registering a plexus component implementing

http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/tree/tycho-p2/tycho-p2-facade/src/main/java/org/eclipse/tycho/p2/facade/internal/TychoP2RuntimeMetadata.java 

Regards
Jan



-----Original Message-----
From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] On Behalf Of Marc-Andre Laperle
Sent: Donnerstag, 1. Dezember 2011 07:46
To: Tycho user list
Subject: Re: [tycho-user] Building a documentation index with Tycho

Hi Igor,

Thank you for the quick response. Yes I was able to make it work. It 
works either by making the plugin part of Tycho (using tycho group id 
and parent) or as a "separate/external" plugin. It's basically a 
stripped down version of the TestMojo class and the code is quite 
simple. So, making this kind of extension seems easy enough to me. The 
hardest part really was to learn about Maven, Tycho, PDE Build and the 
Equinox Launcher all at the same time.

I think providing a generic mojo to execute eclipse applications would 
great! But one problem I see with this approach is that the user would 
have to manually configure the dependencies of the application. For 
example, antRunner needs org.apache.ant and org.eclipse.help.base so the 
user would have to configure the plugin in the POM in a way to include 
the dependencies. The user would just "have to know" which bundles are 
needed for each Eclipse application. That or the mojo could just add 
everything in p2/bundles... but I'm not sure how efficient that would 
be. So the way I see it, making a generic mojo will certainly allow 
other use cases (applications) in the future but it also puts more 
burden on the configuration the user has to do. Having a very specific 
mojo to build a documentation index makes it very easy to use since it 
can make some assumptions for the user, for example it can have the ant 
dependencies hard-coded inside the mojo. Also, with the specific mojo, 
we could get rid of the user-provided ant build file 
(customBuildCallbacks.xml) and move the two simple parameters (manifest 
and destination) to the plugin configuration then create the ant file on 
the fly. So I guess this is about great flexibility versus ease of use. 
I'd like to hear your thoughts on that before creating a bugzilla and 
contributing code.

Regards,

Marc-Andre

On 11/29/2011 4:30 PM, Igor Fedorenko wrote:
> Yes, this sounds about right. I am curious to know if you were able to
> make it work and if there is anything we can provide in Tycho code to
> make this sort of extensions easier to implement. Or maybe we can
> provide generic mojo to execution eclipse applications...
>
> -- 
> Regards,
> Igor
>
> On 11-11-29 1:16 PM, Marc-Andre Laperle wrote:
>> Hi everyone,
>>
>> I'm new to Maven and Tycho. I would like to build the index for
>> documentation using Tycho (for CDT). The steps for doing this with PDE
>> build are described here:
>> http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Fguide%2Fua_help_setup_preindex.htm 
>>
>>
>>
>> Basically Eclipse's antRunner application needs to be used to execute a
>> Ant task, build.index. Has anyone tried to achieve something similar
>> with Tycho?
>>
>> I attempted to wrap the execution of the application in a simple Ant
>> task that would then execute antRunner but this doesn't work since the
>> launcher can't find the dependencies. Instead, I created a Mojo that
>> works similarly to the TestMojo in tycho-surefire-plugin. It creates an
>> "Eclipse Installation" (including creating the config.ini) then executes
>> antRunner successfully.
>>
>> Is this the right approach? If so, would the Tycho project be interested
>> in including this Mojo/plugin?
>>
>> Thanks!
>>
>> Marc-Andre
>>
>> For reference, the bug I'm trying to fix:
>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=350828
>> and the Egit equivalent
>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=350861
>> _______________________________________________
>> tycho-user mailing list
>> tycho-user@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/tycho-user
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user


Back to the top