You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by "Jing Xue (JIRA)" <ji...@apache.org> on 2009/01/26 04:24:59 UTC
[jira] Updated: (IVY-1016) Patch to add an ivy:eclipse ant task
that generates Eclipse .classpath files
[ https://issues.apache.org/jira/browse/IVY-1016?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jing Xue updated IVY-1016:
--------------------------
Description:
I put together a post-resolve ivy:eclipse task that updates the Eclipse .classpath file according to the result of ivy:resolve. It also will discover any source jars if they are part of the resolve/download, and automatically attach them to the corresponding entries.
For example, I have this entry in ivy.xml:
{code:xml|title=ivy.xml}
<dependency org="commons-collections" name="commons-collections" rev="3.2.1" conf="compile;references">
<artifact name="commons-collections" type="sources" ext="jar" m:classifier="sources" conf="references" />
</dependency>
{code}
In build.xml, I have:
{code:xml|title=build.xml}
<target name="eclipse" description="Updates eclipse classpath.">
<ivy:configure settingsId="ivy.eclipse" override="true" />
<ivy:resolve settingsRef="ivy.eclipse" conf="compile, references" />
<ivy:eclipse settingsRef="ivy.eclipse" conf="compile, references" />
</target>
{code}
And running 'ant eclipse' will update my .classpath with the cache path to the commons-collections jar, with its sources jar attached. The classpath entry will be annotated with an ivygen="true". Next time I run 'ant eclipse', this entry will be recognized and replaced with whatever updated paths.
This is only the first draft. I know there is IvyDE, but I feel that this could be a good starting point for an alternative that is more Ant-oriented.
was:
I put together a post-resolve ivy:eclipse task that updates the Eclipse .classpath file according to the result of ivy:resolve. It also will discover any source jars if they are part of the resolve/download, and automatically attach them to the corresponding entries.
For example, I have this entry in ivy.xml:
{code:xml|title=ivy.xml}
<dependency org="commons-collections" name="commons-collections" rev="3.2.1" conf="compile;references">
<artifact name="commons-collections" type="sources" ext="jar" m:classifier="sources" conf="references" />
</dependency>
{code}
In build.xml, I have:
{code:xml|title=build.xml}
<target name="eclipse" description="Updates eclipse classpath.">
<ivy:configure settingsId="ivy.eclipse" override="true" />
<ivy:resolve settingsRef="ivy.eclipse" conf="compile, references" />
<ivy:eclipse settingsRef="ivy.eclipse" conf="compile, references" />
</target>
{code}
And running 'ant eclipse' will update my .classpath with the cache path to the commons-collections jar, with its sources jar attached. The classpath entry will be annotated with an ivygen="true". Next time I run 'ant eclipse', this entry will be recognized and replaced with whatever updated paths.
This is only the first draft. I know there is IvyDE, but I feel that this could be a good starting point for a alternative that is more Ant-oriented.
> Patch to add an ivy:eclipse ant task that generates Eclipse .classpath files
> ----------------------------------------------------------------------------
>
> Key: IVY-1016
> URL: https://issues.apache.org/jira/browse/IVY-1016
> Project: Ivy
> Issue Type: New Feature
> Components: Ant
> Affects Versions: trunk
> Reporter: Jing Xue
> Attachments: EclipseClasspath.java
>
>
> I put together a post-resolve ivy:eclipse task that updates the Eclipse .classpath file according to the result of ivy:resolve. It also will discover any source jars if they are part of the resolve/download, and automatically attach them to the corresponding entries.
> For example, I have this entry in ivy.xml:
> {code:xml|title=ivy.xml}
> <dependency org="commons-collections" name="commons-collections" rev="3.2.1" conf="compile;references">
> <artifact name="commons-collections" type="sources" ext="jar" m:classifier="sources" conf="references" />
> </dependency>
> {code}
> In build.xml, I have:
> {code:xml|title=build.xml}
> <target name="eclipse" description="Updates eclipse classpath.">
> <ivy:configure settingsId="ivy.eclipse" override="true" />
> <ivy:resolve settingsRef="ivy.eclipse" conf="compile, references" />
> <ivy:eclipse settingsRef="ivy.eclipse" conf="compile, references" />
> </target>
> {code}
> And running 'ant eclipse' will update my .classpath with the cache path to the commons-collections jar, with its sources jar attached. The classpath entry will be annotated with an ivygen="true". Next time I run 'ant eclipse', this entry will be recognized and replaced with whatever updated paths.
> This is only the first draft. I know there is IvyDE, but I feel that this could be a good starting point for an alternative that is more Ant-oriented.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.