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

没有主类的Spring靴

尹超
2023-03-14

我正在尝试使用Spring Boot,并创建一个jar,并将其安装到我的maven存储库中。

这是一个库jar文件,将在我的主应用程序中用作依赖项,它也是一个Spring-Boot应用程序。现在,我只是在做一个hello world示例。这是我在这个项目中的一个类:

public class MyLibrary {

  public String getMessage() {
    return "Hello World!";
  }
}

我的POM基本上是这样的:

<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<groupId>com.me.plugin</groupId>
<artifactId>myLibrary</artifactId>
<version>0.0.1-SNAPSHOT</version>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.7.RELEASE</version>
</parent>

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

但是当我尝试构建时,我得到了“找不到主类”错误。这对我来说非常有意义,但是我如何让spring制作一个库jar。我知道我可以用一个main方法添加一个Application.java,但这不是我想要的,我想要一个简单的jar文件,但是要有所有Spring Boot注释、注入等等。。。

我该怎么做呢?Spring的靴子不是我想要的吗?

共有1个答案

司徒锐进
2023-03-14

我确信你在pom中使用的是spring boot maven插件。xml(如下所示),它允许您打包可执行jar或war归档文件并运行应用程序。

使用此插件,Spring搜索主应用程序。Spring库项目不需要此插件。删除此插件并干净安装。

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

我假设您正在这个库项目中创建一些spring配置文件或组件。你可能不需要大而肥的Spring启动。但如果您需要多个spring模块,并且希望所有依赖项都放在一个地方,那就没问题了。

 类似资料:
  • 我已经开始使用Spring WebFlux,最近我想知道为什么ServerResponse没有主体类型的泛型。这与同步响应不一致 ServerResponse中的响应体类型在此方法的签名中未知。是不是应该像下面这样? 我想知道ServerResponse没有这种泛型类型的原因是什么?

  • 我有以下简单的构建。gradle文件: 下面的单个java文件位于: 但是,如果我运行,我会在目录中得到一个jar,它没有主类集。它的清单文件没有条目。为什么会这样?

  • 问题内容: 在我的applicationContext.xml中,这就是将xml映射到POJO的方式。如何将目录映射到类文件而无需创建xml? 问题答案: 您可以通过转换进一步简化操作 至 现在您的包中所有带有注释的类都将自动被拾取。

  • NetBeans 12.0 Jdk 15 我无法启动我的程序,单击绿色的run按钮没有任何作用,右键单击MainFrame上的run file会出现错误“类没有主方法”。但正如您在下面的GIF中所看到的,它确实有一个main(字符串args[])。 有人知道为什么会这样吗?

  • 我们正在尝试在指定的窗口时间从Kafka读取数据(所以我们有Kafka消费者),这意味着避免在其他时间读取数据。但是,我们不确定如何在时间段到期后关闭消费者。我想知道是否有任何如何做到这一点的示例?非常感谢您对我们的帮助。

  • 问题内容: 我使用Hibernate制作了一个示例应用程序。我的要求是表上没有主键。我只需要从应用程序中选择查询。我知道应该有一个主键,但是我所引用的表没有它。 它有大约5万条记录。因此,修改表以添加ID列将看不到可行的选项。 有可能吗 问题答案: Hibernate 要求 实体表具有主键。故事结局。 在谈论数据库时,5万条记录根本就不多。 我的建议:在表中添加一个自动增量整数PK列。您会对它的速