Maven web项目,未找到类别外部罐子的战争异常

时间:2017-07-14 04:53:22

标签: java eclipse maven

我有一个maven web项目,我需要包含一些第三方罐子(不在线),所以我使用

安装它们
<dependency>
    <groupId>com.smas.cluster</groupId>
    <artifactId>cluster-smas</artifactId>
    <version>2.0-SNAPSHOT</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/src/main/resources/cluster-smas-2.0-SNAPSHOT.jar</systemPath>
</dependency>

我面临的问题是当我运行maven clean install时生成的war文件没有包含第三方jar。 搜索后我找到了一个解决方案,我在lib文件夹中复制了jar(在项目的根目录下创建)然后我在Pom文件中使用了以下代码段

<plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-war-plugin</artifactId> 
        <version>2.0.2</version> 
        <configuration> 
          <webResources> 
            <resource> 
              <directory>${project.basedir}/libs/</directory> 
              <targetPath>WEB-INF/lib</targetPath> 
            </resource> 
          </webResources> 
        </configuration> 
  </plugin> 
</plugins>

现在,jar从我的lib文件夹复制到生成的war文件中的WEB-INF / lib /。但是当我运行该服务时,我得到Class not found异常的错误。

1 个答案:

答案 0 :(得分:0)

试试这个,删除system范围和systemPath,然后删除war插件,只留下依赖声明。

<dependency>
    <groupId>com.smas.cluster</groupId>
    <artifactId>cluster-smas</artifactId>
    <version>2.0-SNAPSHOT</version>
</dependency>

构建您的项目。您的依赖项JAR应该出现在WEB-INF / lib中,并且这些类将在运行时可用。