Jar文件ADD DIRECTORY ENTRIES导出jar时的Eclipse选项

时间:2012-11-06 06:27:00

标签: java eclipse spring java-ee jar

我不知道我是否在问正确的问题,但我想澄清我的怀疑。

实际上我遇到了从jar文件中引用类文件的场景。 我的意思是说我有一个后端java项目说ABC带有application-context.xml文件。

现在我创建了ABC项目的jar文件,并在一个基于Web的应用程序中使用。

在这里,我面临的问题是豆子没有获得自动装配,并且知道问题是, 当我使用Eclipse导出ABC项目的jar文件时,我没有选择 “ADD DIRECTORY ENTRIES”复选框,后来我做了所有工作。

通过在jar文件中选中此框来查看所做的更改,以便全部工作,

所以我创建了2个jar文件,其中一个选中了“ADD DIRECTORY ENTRIES”,另一个未经检查,然后我使用超比较比较了这两个jar,发现没有任何区别。

有人可以解释一下“ADD DIRECTORY ENTRIES”究竟是什么吗?

我所知道的是它应该添加完整的结构而不是单个路径 COM /公司/项目/ MyJavaFile.class

  

COM /公司/

     

COM /公司/项目/

     

COM /公司/项目/ MyJavaFile.class

如果我错了,请纠正我。

3 个答案:

答案 0 :(得分:7)

如果需要使用class.getResource()方法获取jar文件中特定目录的URI,则应在创建jar文件时启用“添加目录条目”。你可能想要这样做的原因是为你的“资源”文件夹保存一个URI。

如果你只使用class.getResource()来获取特定文件的URI [而不是目录],那么如果你不关闭“添加目录条目”,你就可以了。

答案 1 :(得分:2)

表单文档JAR File Exporter

  

添加目录条目:为每个目录添加一个条目到JAR文件,即使该目录只包含子目录。

答案 2 :(得分:1)

如果您查看带有7-zip或类似内容的jar文件,则可以看到当选择“添加目录条目”时文件夹中存在“D”属性。当该选项不存在时,这些属性不存在。您的比较可能是比较jar文件中文件的内容,而不是查看jar文件属性。