gpt4 book ai didi

java - Maven 仍然可以成功构建并出现已知错误

转载 作者:行者123 更新时间:2023-11-30 10:55:21 26 4
gpt4 key购买 nike

我试图在 Ubuntu 中运行我的 .jar,但每次都失败并出现 ClassNotFoundException。我认为我的问题出在我的 Jar 文件上,但在深入研究之后,我认为问题出在我的 Maven 实现上。当我运行 Maven 时它构建成功,但是我的代码中有错误。我已经在几台不同的计算机上使用相同的方法运行了相同的代码,但从未发生过这种情况。 Maven 总是在适当的时候抛出错误,所以它允许它在出现明显错误后成功构建这一事实让我认为这可能是我的 .jar 问题的原因。

我在查看我的目标文件夹时发现我缺少通常位于其中的“classes”、“maven-status”和“generated-sources”文件夹。我的 CLASSPATH 变量设置为

"/media/client-script/java-consumer-client" 

这应该允许 Maven 找到我的类,因为在 pom.xml 中有一行

<start-class>com.java.consumer.client.Application</start-class>

这是我的主类的包。我不确定为什么,但似乎 Maven 无法找到要运行的类。

Here's a screenshot of my file structure.

有谁知道为什么 Maven 不会在正确的位置寻找我的类(class)?我的类路径设置有误吗?

这是我的 pom.xml 文件以供引用:

<?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.java.consumer</groupId>
<artifactId>java-consumer-client</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>Consumer Client</name>
<description>Sample Client for pulling streams from the Consumer Service API.</description>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.1.RELEASE</version>
</parent>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<!--
<configuration>
<jvmArguments>
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
</jvmArguments>
</configuration>
-->
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>javax.websocket</groupId>
<artifactId>javax.websocket-api</artifactId>
<scope>compile</scope>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.glassfish.tyrus</groupId>
<artifactId>tyrus-client</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<groupId>org.glassfish.tyrus</groupId>
<artifactId>tyrus-container-grizzly-client</artifactId>
<version>1.9</version>
</dependency>
</dependencies>

<properties>
<start-class>com.java.consumer.client.Application</start-class>
<spring.boot.version>1.2.1.RELEASE</spring.boot.version>
<spring.boot.websocket.version>1.2.1.RELEASE</spring.boot.websocket.version>
</properties>

</project>

最佳答案

默认情况下,您必须将 java 类存储在 src/main/java 文件夹中。不在 src/com/java 文件夹中。

关于java - Maven 仍然可以成功构建并出现已知错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33374491/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com