当前位置: 首页 > 知识库问答 >
问题:

Spring Boot/Maven命令行应用程序:找不到或加载主类

刘博雅
2023-03-14
$ mvn clean package
...
$ java -jar target/dataloads-0.0.1-SNAPSHOT.jar hello
Error: Could not find or load main class com.example.dataloads.SpringBootConsoleApplication
package com.example.dataloads;

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SpringBootConsoleApplication implements CommandLineRunner {

    public static void main(String[] args) {
        System.out.println("STARTING THE APPLICATION");
        SpringApplication.run(SpringBootConsoleApplication.class, args);
        System.out.println("APPLICATION FINISHED");
    }

    public void run(String... args) {
        System.out.println("EXECUTING : command line runner");

        for (int i = 0; i < args.length; ++i) {
            System.out.println(args[i]);
        }
    }
}
<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.example</groupId>
    <artifactId>dataloads</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>dataloads</name>
    <url>http://maven.apache.org</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

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

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <!-- Build an executable JAR -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix>lib/</classpathPrefix>
                            <mainClass>com.example.dataloads.SpringBootConsoleApplication</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

我漏掉什么了吗?如果有帮助的话,我一直在学习本教程--https://www.baeldung.com/spring-boot-console-app--但是,当我收到警告/错误时,我不得不做一些小的修改(例如,在pom.xml中声明main method)。

共有1个答案

薛承基
2023-03-14

您尝试过使用“spring-boot-maven-plugin”而不是“maven-jar-plugin”吗?

请参见以下示例:https://www.mkyong.com/spring-boot/spring-boot-non-web-application-example/

我只是像魅力一样努力工作,没有任何修改:)

 类似资料:
  • 接下来,我要创建我的.jar文件。我使用以下命令这样做: 然后,我尝试这样运行我的项目: 无论我尝试什么,我似乎都得到以下错误: 如何生成类文件会有问题吗?为了最初生成类文件,我执行了以下操作: 请让我知道我还应该尝试什么!谢谢。

  • 和这个一样,但还是没弄明白。尝试了所有解决方案.... Maven错误:找不到或加载主类org.codehaus.plexus.ClassWorlds.Launcher.Launcher 错误:找不到或加载主类org.codehaus.plexus.ClassWorlds.Launche r.Launcher

  • 我目前正在学习springboot。通过选择spring starter project,我在STS中创建了一个项目。spring boot版本2.2.2和已导入JPA、H2和RestRepository。 下面是我的领域类, 应用属性 存储库类 在波姆。xml显示了下面提到的错误。不确定,因为这一点,我得到了错误,但我没有在pom的任何变化。xml 在运行项目时,我得到了以下错误,不知道为什么整

  • 我读了一百个与此相关的帖子,但似乎没有什么对我的情况有帮助。 我的命令发生了一件奇怪的事情。首先,对于当前的任务,我需要使用一本算法书中的教科书库,该书中的安装程序还设置了Java SE 7。我以前在我的电脑上安装了Java 8 JDK(如果这是值得了解的信息)。因此,例如,当我运行涉及该教科书库中方法的程序时,我会编写。 昨晚Path变量有点问题,我无法编译任何东西,所以我设置了一些变量,然后就

  • 问题内容: 我已经尝试了几天,为我的多模块maven项目创建可执行的jar文件。但是,当我尝试运行此jar文件时,出现“找不到或加载主类src.main.java.com.domain.Mainclass”(出于公司隐私的考虑,我更改了名称domain和MainClass) 我已经搜寻了几天,似乎没有任何明显的技巧可行。 我的项目有一个主要的Maven项目,该项目可以下载所有依赖项(packagi

  • “错误:找不到或加载主类”。 我不知道我做错了什么。我有jre 1.8.0_45和jdk 1.7.0_71。