axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (AXIS2-4937) Creating Eclipse Features and a p2 Repository for Axis2 Eclipse IDE plugins
Date Fri, 19 Aug 2011 18:10:30 GMT

    [ https://issues.apache.org/jira/browse/AXIS2-4937?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13087845#comment-13087845
] 

Andreas Veithen commented on AXIS2-4937:
----------------------------------------

I don't think there is any confusion here. I understand very well the proposed changes and
I disagree with them.

Today (and in contrast to the situation in Axis2 1.5.1) the build of the Eclipse plugins requires
almost no maintenance. That is because the Felix plugin is configured with the following rules:

<Embed-Dependency>*;scope=compile|runtime;groupId=!org.eclipse.*;artifactId=!commons-logging|wstx-asl|geronimo-activation_1.1_spec|geronimo-javamail_1.4_spec|geronimo-stax-api_1.0_spec|ant*</Embed-Dependency>
<Embed-Transitive>true</Embed-Transitive>
<Import-Package>!org.dom4j*,!nu.xom,!org.jdom*,!javax.portlet,!org.apache.commons.io*,*</Import-Package>

They make sure that Felix generates an appropriate manifest as well as the correct list of
dependencies to embed in the plugin, solely based on the Maven metadata and a code analysis
of the project and its dependencies. The important point is that even if the Maven dependencies
change, in 99% of the cases, the new metadata generated by Felix will be correct. There will
obviously cases where a change in dependencies may break the plugin, but they only require
minor tweaks of the rules shown above.

On the other hand, the proposed change implies that we would again have to manually keep in
sync a set of metadata that is completely distinct from the Maven metadata. In practice this
means that:

- every time we update the version of a Maven dependency, we need to update the manifest and
build.properties.
- every time the transitive dependencies change, we need to update the manifest and build.properties.
- every time we do a release we need to manually change the Axis2 version number in the manifest
and build.properties.
- we need to manually check that the Import-Package attribute in the manifest is still up-to-date.

Actually, even the build system in Axis2 1.5.1 required less maintenance (because at least
it was able to update the version numbers automatically), and still we had a couple of Axis2
releases that shipped with broken Eclipse plugins. As a conclusion, this type of solution
didn't work in the past, and there is no reason to believe that a solution that requires even
more manual maintenance would work in the future.

> Creating Eclipse Features and a p2 Repository for Axis2 Eclipse IDE plugins
> ---------------------------------------------------------------------------
>
>                 Key: AXIS2-4937
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4937
>             Project: Axis2
>          Issue Type: New Feature
>          Components: ide plugins
>    Affects Versions: 1.5.4
>            Reporter: Harshana Eranga Martin
>            Priority: Critical
>             Fix For: 1.7.0
>
>         Attachments: Axis2_4937_Eclipse_plugins.patch
>
>
> This jira will be used to track the progress of creating Eclipse Features and a p2 repository
for Axis2 Eclipse IDE plugins.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


Mime
View raw message