MANIFEST.MF中缺少Java依赖项

时间:2012-12-07 14:08:11

标签: java maven manifest

我的一些依赖项存在一些问题,在pom文件dependencyManagement部分中声明:MANIFEST.MF文件中不包含依赖项。此依赖项在部分中的Web项目中使用。但是,在MANIFEST中没有关于此依赖关系的相关声明,部署的应用程序失败并出现异常。如何保证将此依赖项添加到MANIFEST文件? 感谢。

1 个答案:

答案 0 :(得分:1)

Maven不会将依赖项放在MANIFEST.MF文件中。如果你有一个web项目,这意味着有一个war文件,所有依赖项将被打包到war文件中。此外,不需要将依赖项放入MANIFEST.MF文件中。 如果您真的想将依赖项放入MANIFEST.MF文件中,则必须像这样配置maven-war-plugin

<project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.3</version>
        <configuration>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
            </manifest>
          </archive>
        </configuration>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

如果仅在dependencyManagement中定义依赖项,则它将不是真正的依赖项。这只是要使用的版本的定义。 要使依赖项真正用于项目,必须在依赖项中定义依赖项。