And*_*ose 8 java spring tomcat maven spring-boot
所以我正在构建一个spring boot web应用程序,打包为战争,并部署到tomcat应用程序服务器.
我在tomcat的pom.xml中有以下依赖项:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
需要提供此依赖关系的范围,以便能够将其部署到tomcat实例.但是,当我想通过spring boot CLI或通过IntelliJ的默认spring boot运行配置来运行war时,我需要删除<scope>provided</scope>它以便它运行嵌入式tomcat.
我的问题是,是否有某种方法可以根据活动弹簧配置文件或其他方法有条件地提供依赖关系?
小智 5
在您的特定情况下,您可以这样做:在使用嵌入式 tomcat 运行 spring-boot 的依赖项中:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)
并在配置文件中部署在 tomcat 下
<profile>
<id>tomcat</id>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
</profile>
Run Code Online (Sandbox Code Playgroud)
之后,为特定配置文件构建
mvn clean install -Ptomcat
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5666 次 |
| 最近记录: |