【发布时间】:2019-10-25 05:42:36
【问题描述】:
我有两个 Spring Boot 项目
第一个项目包含我的实体、DTO 和 REPO 类
其次是包含所有Controller和服务
所以在这里我们试图做的我正在创建我的实体项目的 jar,作为 mavan 依赖添加到第二个项目中,在第二个项目的 Pom 文件中添加依赖项后,我还在 .m2 或第一个项目目录中添加 jar
在 pom 中添加 mavan 依赖项后第一个项目没有收到任何错误,但是当我尝试访问任何类或我的第一个项目无法在类中找到时
第二个项目 pom 文件
<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.9.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.coreservice</groupId>
<artifactId>bms-coreservice</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>bms-coreservice</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.bms</groupId>
<artifactId>dataload</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- <scope>system</scope>
<systemPath>${project.basedir}/lib/dataload-0.0.1-SNAPSHOT.jar</systemPath> -->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.github.munerf.modelmapper-spring-boot-starter/modelmapper-spring-boot-starter -->
<dependency>
<groupId>com.github.munerf.modelmapper-spring-boot-starter</groupId>
<artifactId>modelmapper-spring-boot-starter</artifactId>
<version>0.0.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/postgresql/postgresql -->
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
添加依赖mavan repo列表后显示jar
我也试试
<repositories>
<repository>
<id>in-project</id>
<name>In Project Repo</name>
<url>file://${basedir}\src\lib\dataload-0.0.1-SNAPSHOT.jar</url>
</repository>
</repositories>
【问题讨论】:
-
您的第二个项目是否使用了 maven 构建?有错误提示吗?
-
不,我没有收到错误
-
具有系统路径的依赖项不包含在存档中。你为什么不直接声明一个没有系统路径的依赖呢?您的第一个项目的 jar 应发布在共享存储库中。
标签: java spring spring-boot dependency-injection