Spring Boot应用程序无法使用cmd运行

时间:2018-11-15 10:43:21

标签: java spring spring-boot cmd runtime-error

我尝试使用java -jar jarfile.jar运行编译的jar文件,但返回以下错误。

Exception in thread "main" java.lang.ClassNotFoundException: MainApplication
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:93)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:46)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
        at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:593)

为什么会这样。当我在弹簧工具套装中运行时,它可以完美运行。仅当我尝试使用CMD Windows运行我的应用程序时

3 个答案:

答案 0 :(得分:1)

已解决此答案正确。 这是在项目的api模块中配置pom.xml时出现的错误。

<build>

    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.1.0.RELEASE</version>
            <configuration>
                <mainClass>com.mobios.MainApplication</mainClass>
                <layout>ZIP</layout>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

以下行创建错误

<mainClass>MainApplication</mainClass>

这定义了应用程序的主类。但是我只提到了类名。它还必须包含组ID。我认为很多人都像我一样犯这种简单的错误。作为弹簧靴初学者,我认为这很普遍。上一行必须如下所示。

<mainClass>com.mobios.MainApplication</mainClass>

现在,在构建罐子并运行它时可以正常工作。但是没有组ID,我可以在eclipse或您使用的任何其他开发工具中运行项目。

答案 1 :(得分:0)

您添加了这种类型的spring boot应用程序类吗?

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


    @SpringBootApplication
    public class FApplication {

        public static void main(String[] args) {
            SpringApplication.run(FApplication.class, args);
        }
    }

可能是您的应用程序在jar文件中找不到Java清单。

答案 2 :(得分:0)

打开命令提示符,然后转到pom.xml所在的位置
运行mvn clean install
收到消息构建成功

通过cd target
转到 target 文件夹
然后运行命令 java -jar <file-name>.jar

如果在运行时仍收到错误消息,则说明某些spring配置错误。

https://start.spring.io/创建新的Spring Boot应用程序