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

我们可以使用Spring Boot实现Java库吗?

林和畅
2023-03-14

根据线程的名称,我想使用SpringBoot创建一个JAVA库。我发现了这个线索:使用SpringBoot创建一个库jar。然而,该线程的目标似乎可以通过将其实现为RESTAPI来解决。

目前,我正在使用SpringBoot开发一个基于Spring的JAVA库。而且,我尝试将其打包为jar文件,并让另一个JAVA应用程序在JAVA库中使用它。不幸的是,我发现当调用方应用程序调用添加的库的某些方法时,库中定义的配置根本不起作用。它还显示类似“CommandLineRunner不存在”的错误。

有关更多信息,请参阅pom的一个片段。xml文件如下所示。根据配置,我不包括web应用程序的依赖项。

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.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>
    <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-core</artifactId>
        <version>2.3.0</version>
        <scope>test</scope>
    </dependency>
</dependencies>

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

共有1个答案

杨骁
2023-03-14

当以正确的方式设计时,这根本不应该是一个问题。但具体来说,这取决于您使用的功能。由于Spring支持外部库,如JPA,WebSocket,...

开发一个库并在另一个项目中使用它有两个重要的注释。

第一个是简单的@Configuration,另一个是@导入

图书馆项目

在根包中放入一个类,如下所示。

@Configuration // allows to import this class
@ComponentScan // Scan for beans and other configuration classes
public class SomeLibrary {
    // no main needed here
}

使用库的其他项目

通常,将类放入项目的根包中。

@SpringBootApplication
@Import(SomeLibrary.class) // import the library
public class OtherApplication {
    // just put your standard main in this class
}

重要的是要记住,其他事情可能是必要的,这取决于您在其他框架中使用的内容。例如,如果您使用spring数据,@EntityScan注释扩展了hibernate扫描。

 类似资料:
  • 我是springboot的新手,目前正在尝试调试spring boot应用程序。有什么办法可以做到吗?

  • 问题内容: 我正在学习Scala,并好奇是否有可能: 创建一个在Scala中实现Java接口的对象 将对象编译成类文件并将其打包 使用Java中的对象 我想在Scala中实现自定义Lucene查询解析器,并能够让其他人从Java应用程序访问它。 问题答案: 我假设“对象”实际上是“类”。无论如何,答案是肯定的,您可以这样做。如果您希望所有这些都在同一项目中,则需要利用Scala / Java联合编

  • 我正在使用BeautifulSoup刮取一个URL,并使用以下代码查找标记,其类为: 现在,在上面的代码中,我们可以使用获取标记和与它们相关的信息,但我想使用XPath。是否可以将XPath与BeautifulSoup一起使用?如果可能,请给我提供示例代码。

  • 我的应用程序使用Xfire作为web服务客户端,它是一个遗留系统,其中的服务是用Perl编写的,我正在用Spring boot修改/重写应用程序,当我添加Maven依赖时,当我尝试构建时它显示错误 我不知道数据库用在哪里了

  • 我正在做一个Springboot-Kotlin-Gradle项目,我似乎遇到了记录器冲突。我正在使用一个包含的库--因此,在启动时,我得到了以下精彩消息: 我可以在或中添加一些内容吗?

  • 问题内容: 我是JPA的新手。 根据我的理解,JPA是规范,Hibernate实现JPA并提供附加功能以及JPA方法。 但是我正在阅读JPA教程,其中使用对象可以对数据执行CRUD,而无需使用Hibernate库! 所以任何人都可以让我知道 是否可以单独使用JPA 而不使用Hibernate 来使用方法? 请提及一些有用的链接或示例。 非常感谢您的回应。 谢谢。 问题答案: 您是正确的JPA是规范