java 为什么我的清单文件“不在jar里”?

p8h8hvxi  于 2023-05-05  发布在  Java
关注(0)|答案(1)|浏览(168)

我试图编译一个可运行的jar文件,为此,我编写了一个清单文件。当eclipse完成编译时,其中一个警告是'Project/src/META-INF/MANIFEST.MF was replaced by the generated MANIFEST.MF and is no longer in the jar.'为什么会发生这种情况,如何停止它?
先谢谢你了。

cs7cruho

cs7cruho1#

当您在Eclipse中编译Java项目时,构建过程会生成一个具有默认属性的新MANIFEST.MF文件,并替换您在项目的META-INF目录中创建的文件。这就是为什么您会看到警告消息。
为了避免这种情况,您可以指示Eclipse使用您自己的清单文件,而不是生成一个新的清单文件。要执行此操作,请执行以下步骤:
右键单击您的项目并选择“Properties”。在Properties对话框中,导航到“JavaBuildPath”并选择“Libraries”选项卡。展开JRE系统库条目并选择“Access rules”。单击“Add”并输入“META-INF/MANIFEST.MF”作为“Access rule pattern”。选择“Forbidden”作为“Resolution”并单击“OK”。单击“OK”关闭对话框并保存更改。现在,当您编译项目时,Eclipse将使用您自己的MANIFEST.MF文件,而不是生成一个新文件。

相关问题