2011-09-06 60 views
2

编辑:我欣赏常春藤或Maven的建议,但目前这不是我的选择。我无权使用这些工具。我只是在寻找一种方法将我引用的.classpath JAR文件导入到我的项目中的一个文件夹中。Eclipse&JAR地狱

我已经创建了一个项目,它使用了大约50个外部JAR文件,我从同一个工作区内的其他项目中引用了该文件。

因此,我的项目的目录strucure样子:

MyProject 
    src/ 
    test/ 
    Referenced Libraries/ 
     ... 50+ JARs 
    lib/ 

我的项目编译和运行优美Eclipse内部。但是现在我需要添加一个构建脚本,以便其他开发人员可以将项目从SVN中撤下并单独运行。为此,我想将所有当前位于Eclipse内部目录Referenced Libraries中的JAR复制到我的项目的lib目录中,我将通过最终发行版进行JAR。

我在包资源管理器中,并试图将Referenced Libraries中的文件复制并粘贴到lib/并且没有骰子。我得到以下Eclipse错误:

Cannot paste the clipboard contents into the selected elements. 

任何人有任何想法我可以强制这种复制操作工作?如果我右键单击Referenced Libraries内的任何JAR,我会看到一个名为的Eclipse选项。迁移JAR文件,但恐怕会削减 -n将JAR从其当前位置粘贴到新的lib/目录。这是不可行的,因为还有许多其他项目完全需要这些JAR文件。

感谢您的任何见解!

+3

Eclipse中的'Package Explorer'视图不是真正的文件系统视图。尝试,而是如果要复制的文件导航视图。另外,“引用库”视图仅仅是构建路径上的那些库的逻辑视图 - 它不是真正的文件系统目录。如果我是你,并且你的项目允许,我会看看Maven来管理你的依赖和应用程序的包装。 –

+1

听起来像是Maven或Apache Ivy等依赖管理工具的工作。 – Liggy

+0

好了,现在我们正在某个地方!所以我切换到了Navigator View,并看到一个名为.classpath的文件,它显示了classpath上的所有JAR。所以下一个合乎逻辑的问题是:如何在构建时将.classpath中引用的所有JARs复制到我的lib /目录中? – IAmYourFaja

回答

1

我没有找到另一种方式去,但自己的罐子复制到lib文件夹,将引用添加到您的LIB文件(不是外部罐子您的计算机上),并把它上传到SVN。

编辑澄清:

  1. 删除所有从您的构建路径引用。现在你无法编译该项目。
  2. 将您需要的每个jar文件复制到项目的lib文件夹中。
  3. 再次构建路径并逐个将引用添加到您的jar(lib文件中)。使用“添加JAR ...”按钮,而不是“外部JAR”。
  4. 编译,如果一切都很好,
  5. 上传整个项目SVN。
+0

Thaaaaaaankk yoouuu! – IAmYourFaja

3

你考虑过吗?Maven?这是这种情况的特殊工具。对于文件的操作,最好使用Navigator视图。

+0

是的,请考虑切换到Maven。 – Raku

+1

感谢您的建议,但这不是问题的答案,平台级别的决定超出了我的控制范围。我被Ant/Eclipse困住了。感谢您的推荐,但! – IAmYourFaja

+0

同意。而且我认为它已经集成到新的Eclipse Indigo中。 –