eclipse - java.lang.NoClassDefFoundError 使用 Wildfly、Maven、Rest?
问题描述
我有 2 个 Maven 项目,假设我在 Project1 中使用 Project2 作为依赖项。Project2 使用 Java 安全性并具有一些加密方法。我在 Project2 中运行了命令 mvn install 然后这就是我在 Project1 中添加依赖项的方式:
<dependency>
<groupId> myProject2groupId </groupId>
<artifactId> myProject2artifactId </artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
<type>jar</type>
</dependency>
我在 Project2 pom.xml 中添加了这个:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>ProjectJARs/project</finalName>
</configuration>
</plugin>
Project1 中 Project2 的类和方法的导入工作正常,当我尝试编译为 Java 应用程序并在控制台中打印时没有出现错误。但是当我在 Wildfly 服务器上运行它并从我的其余端点应用 GET/POST 方法时,它给了我这个错误:
org.jboss.resteasy.spi.UnhandledException: java.lang.NoClassDefFoundError: simmetricClasses/SimmetricCriptography
(在 Project1 Maven 依赖项中,我可以看到 Project1 的文件夹,其中包含 [无测试代码])
有人可以帮我解决这个错误吗?
非常感谢
解决方案
这是我想用作模块的项目的 pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>mygroupId</groupId>
<artifactId>myartifactId</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<includes>
<include>**/*.java</include>
</includes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>ProjectJARs/project</finalName>
</configuration>
</plugin>
</plugins>
</build>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
</project>
这个对吗?
推荐阅读
- design-patterns - 所有工厂方法都应该公开吗?
- javascript - 在学习教程时无法将前端连接到后端
- android - React Native npm run android 正在手机中安装旧的 apk 并寻找用于生成离线 apk 的自动化工具
- octobercms - 根据类别 1 设置唯一验证
- android - Android 无法使用签名的 url 将文件上传到谷歌云存储
- c - 关于猜词游戏制作高分表的问题
- .net-core - 如何将 net core 项目发布到 AnyCPU?
- php - 如何在我的 php 代码上添加路径目录,因为当我运行代码并上传文件时,我在第 29 行收到错误
- c++ - c++ 三元运算符期望表达式C/C++(29)
- python - NameError:在封闭范围内赋值之前引用了自由变量“mywidget”