Eclipse包括来自web部署程序集中的apache ivy IDE插件的多个jar

时间:2012-06-29 15:22:50

标签: java eclipse apache ivy ivyde

我最近更新了我的项目设置,以解决我的groovy插件和ivy插件之间的资源问题。

我使用apache ivy IDE插件2.2.0 final&在64位计算机上使用eclipse Helios Service Release。

在我做之前: 项目 - >右键单击常春藤插件 - >属性 - >高级:
启用项目特定设置
使用以下代码构建类路径:
检索到的文物
检索模式:WebContent / WEB-INF / lib / [artifact] - [revision]。[ext]
删除旧的检索工件[已检查]

这对我有用,除非我的项目中还有groovy插件,groovy项目将保留复制到WebContent / WEB-INF / lib /的jar,并且我不允许删除WebContent /中的任何jar WEB-INF / lib /直到我重启eclipse

现在我删除了常春藤插件设置 添加了我的ivy插件作为部署程序集 我现在遇到的问题是每当我使用eclipse发布到tomcat时,它会复制每个常春藤条目的两个罐子。其中一个罐子总是最新版本,然后另一个罐子似乎是同一罐子的随机早期版本。但是,一旦我切换回使用常春藤插件复制jar的旧方法,问题就解决了。

我无法弄清楚这个新问题是否是常春藤插件问题或eclipse部署程序集问题。工作中的其他人尝试在同一个项目中做同样的事情,他们没有 TWO jars 问题。

之前是否有其他人遇到此问题并为其提供解决方案?

谢谢!

1 个答案:

答案 0 :(得分:0)

你和常春藤一起使用Ant吗? 然后,您可以定义用于复制Jars的Ant任务:

<copy todir="@{target-dir}">
    <fileset dir="@{source-dir}">
        <include name="*.jar" />
    </fileset>
</copy>

您甚至可以更详细地指定文件集。 我的Ant构建文件中的一些示例:

<fileset dir="...">
    <include name="${ivy.module}-${ivy.revision}-jar.jar" />
    <include name="${ivy.module}-test-unit-${ivy.revision}-jar.jar" />
    <include name="lib/*.jar" />
    <include name="lib-tests/*.jar" />
    <exclude name="**/*.java" />
    <exclude name="**/*.class" />
</fileset>