【问题标题】:How to prevent IntelliJ from generating a MANIFEST.MF that overrides the original one?如何防止 IntelliJ 生成覆盖原始文件的 MANIFEST.MF?
【发布时间】:2017-02-19 01:54:47
【问题描述】:

我正在使用 IntelliJ IDEA Ultimate 14,我想将 Web 项目部署到 IntelliJ 中的 tomcat 服务器。

在 Project Settings -> Artifacts 中,我从我的 Web 项目中定义了一个“Web 应用程序:Exploded”。在这个工件的输出面板中,我得到了我的 web 项目的 META-INF 文件夹以及其他 web 资源。

当我第一次启动 tomcat 服务器时,IntelliJ 构建并部署了爆炸战争到 tomcat,我的 Web 应用程序运行良好。但是如果我重新启动服务器,我会得到一个异常

java.io.IOException: invalid header field

我查看了爆炸战争的输出,发现 IntelliJ 在 META-INF 中以某种方式生成了一个 MANIFEST.MF,它覆盖了我项目的原始文件。此外,此生成的 MANIFEST 被截断,导致无效标头字段异常。

如何防止 IntelliJ 生成 MANIFEST.MF 或者有什么方法可以使生成的 MANIFEST 有效?

【问题讨论】:

    标签: java tomcat intellij-idea war manifest


    【解决方案1】:

    实际上 MANIFEST.MF 是由父 pom 中的 maven-war-plugin 生成的。

    我可以通过配置战争档案来覆盖生成的 MANIFEST.MF 的值。配置文档:http://maven.apache.org/shared/maven-archiver/index.html.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-09
      • 2015-12-05
      • 1970-01-01
      • 1970-01-01
      • 2012-11-20
      • 2015-04-09
      • 1970-01-01
      • 2015-08-26
      相关资源
      最近更新 更多