我试图编译一个可运行的jar文件,为此,我编写了一个清单文件。当eclipse完成编译时,其中一个警告是'Project/src/META-INF/MANIFEST.MF was replaced by the generated MANIFEST.MF and is no longer in the jar.'为什么会发生这种情况,如何停止它?先谢谢你了。
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文件,而不是生成一个新文件。
1条答案
按热度按时间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文件,而不是生成一个新文件。