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

运行java-jar时无法加载Main-Class manifest属性

贺高杰
2023-03-14

通过遵循本教程,我已经成功地使用MVN clean Package构建了我的Spring MVC项目。

mvn clean package && java -jar target/gs-serving-web-content-0.1.0.jar

我是不是漏掉了什么?

共有1个答案

微生德泽
2023-03-14

如果您正在使用Spring Boot,这将解决您的问题:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>1.2.5.RELEASE</version>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

参考指南Spring Boot Maven插件

 类似资料:
  • 问题内容: 我知道这是一个非常常见的问题,但是我尝试使用Google谷歌搜索,但没有得到任何有益的结果。我试图用我的“ Main.class”文件(由NetBeans制成)制作一个罐子,但我没有试图用它做罐子。 我运行了以下命令: 然后在该文件夹中生成一个.jar文件。我以为那是可行的,但不会运行。 我尝试使用存档打开器打开jar文件,并且其中包含“ Main.class”文件和“ META-IN

  • 问题内容: 我知道这是一个非常常见的问题,但是我尝试使用Google谷歌搜索,但没有得到任何有益的结果。我试图用我的“ Main.class”文件(由NetBeans制成)制作一个罐子,但我没有试图用它做罐子。 我运行了以下命令: 然后在该文件夹中生成一个.jar文件。我以为那是可行的,但不会运行。 我尝试使用存档打开器打开jar文件,并且其中包含“ Main.class”文件和“ META-IN

  • 问题内容: 我试图在运行时将jar文件添加到classpath。我用这个代码 系统输出打印此URL: 我正在仔细检查此路径,此jar存在。即使这个测试也显示com.mysql.jdbc。驱动程序类存在。 但是,当我使用此Class.forName(driver)时,仍然会收到java.lang.ClassNotFoundException。此代码有什么问题? 问题答案: URL可以,但是您仍然尝试

  • 我已经安装了一个应用程序,当我试图运行它(它是一个可执行的jar)时,什么都没有发生。当我用以下命令行运行它时: java-jar“app.jar” 我得到以下信息: “app.jar”中没有主清单属性 通常情况下,如果我自己创建了这个程序,我会在清单文件中添加一个main类属性。但是在这种情况下,由于文件来自应用程序,我不能这样做。我还尝试提取jar,看看我是否能找到主类,但是有很多类,它们的名

  • 问题内容: 我被要求构建一个Java系统,该系统在运行时能够加载新代码(扩展)。我的代码运行时如何重新加载jar文件?或如何加载新的jar? 显然,由于持续的正常运行时间很重要,因此,我想增加在此过程中重新加载现有类的功能(如果这样做不会使事情复杂化)。 我应该注意什么?(将其视为两个不同的问题-一个关于在运行时重新加载类,另一个关于添加新类)。 问题答案: 用现有数据重新加载现有类可能会破坏事情

  • 问题内容: 为什么用Java这么难?如果要使用任何类型的模块系统,则需要能够动态加载JAR文件。有人告诉我,有一种方法可以通过编写自己的方法来完成,但这对于(至少在我看来)应该像调用以JAR文件作为其参数的方法一样容易的事情来说是很多工作。 对执行此操作的简单代码有何建议? 问题答案: 很难的原因是安全性。类加载器是不可变的。你不应在运行时随意向其添加类。实际上,我很惊讶能与系统类加载器一起使用。