mirror of
				https://github.com/continew-org/continew-admin.git
				synced 2025-10-31 10:57:13 +08:00 
			
		
		
		
	1.调整 Spring Boot 配置文件到 config 目录 2.移除 Maven Profiles 配置 3.调整项目打包结构,分离依赖、配置文件。如无依赖调整,部署时仅需拷贝程序包,且更方便进行配置修改 4.调整后的项目打包结构,更贴合部署安装程序结构,例如:Tomcat 安装包、Maven 安装包 5.建议在 bin 目录上一级执行程序,以使日志文件能正确生成在 logs 目录下,参考 Dockerfile
		
			
				
	
	
		
			155 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			155 lines
		
	
	
		
			6.3 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="UTF-8"?>
 | ||
| <!--
 | ||
| Copyright (c) 2022-present Charles7c Authors. All Rights Reserved.
 | ||
| 
 | ||
| Licensed under the Apache License, Version 2.0 (the "License");
 | ||
| you may not use this file except in compliance with the License.
 | ||
| You may obtain a copy of the License at
 | ||
| 
 | ||
|  http://www.apache.org/licenses/LICENSE-2.0
 | ||
| 
 | ||
| Unless required by applicable law or agreed to in writing, software
 | ||
| distributed under the License is distributed on an "AS IS" BASIS,
 | ||
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||
| See the License for the specific language governing permissions and
 | ||
| limitations under the License.
 | ||
| -->
 | ||
| <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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 | ||
|     <modelVersion>4.0.0</modelVersion>
 | ||
| 
 | ||
|     <parent>
 | ||
|         <groupId>top.charles7c</groupId>
 | ||
|         <artifactId>continew-admin</artifactId>
 | ||
|         <version>${revision}</version>
 | ||
|     </parent>
 | ||
| 
 | ||
|     <artifactId>continew-admin-webapi</artifactId>
 | ||
|     <packaging>jar</packaging>
 | ||
| 
 | ||
|     <name>${project.artifactId}</name>
 | ||
|     <description>API 模块(存放 Controller 层代码,打包部署的模块)</description>
 | ||
| 
 | ||
|     <properties>
 | ||
|         <!-- ### 打包配置相关 ### -->
 | ||
|         <!-- 启动类 -->
 | ||
|         <main-class>top.charles7c.cnadmin.ContiNewAdminApplication</main-class>
 | ||
|         <!-- 程序 jar 输出目录 -->
 | ||
|         <bin-path>bin</bin-path>
 | ||
|         <!-- 配置文件输出目录 -->
 | ||
|         <config-path>config</config-path>
 | ||
|         <!-- 依赖 jar 输出目录 -->
 | ||
|         <lib-path>lib</lib-path>
 | ||
|     </properties>
 | ||
| 
 | ||
|     <dependencies>
 | ||
|         <!-- Liquibase(用于管理数据库版本,跟踪、管理和应用数据库变化) -->
 | ||
|         <dependency>
 | ||
|             <groupId>org.liquibase</groupId>
 | ||
|             <artifactId>liquibase-core</artifactId>
 | ||
|         </dependency>
 | ||
| 
 | ||
|         <dependency>
 | ||
|             <groupId>org.springframework.boot</groupId>
 | ||
|             <artifactId>spring-boot-starter-test</artifactId>
 | ||
|             <scope>test</scope>
 | ||
|         </dependency>
 | ||
| 
 | ||
|         <!-- 系统监控模块(存放系统监控模块相关功能,例如:日志管理、服务监控等) -->
 | ||
|         <dependency>
 | ||
|             <groupId>top.charles7c</groupId>
 | ||
|             <artifactId>continew-admin-monitor</artifactId>
 | ||
|         </dependency>
 | ||
| 
 | ||
|         <!-- 系统工具模块(存放系统工具模块相关功能,例如:代码生成、文件管理等) -->
 | ||
|         <dependency>
 | ||
|             <groupId>top.charles7c</groupId>
 | ||
|             <artifactId>continew-admin-tool</artifactId>
 | ||
|         </dependency>
 | ||
|     </dependencies>
 | ||
| 
 | ||
|     <build>
 | ||
|         <!-- 设置构建的 jar 包名 -->
 | ||
|         <finalName>${project.parent.name}</finalName>
 | ||
|         <plugins>
 | ||
|             <!-- 单元测试配置插件 -->
 | ||
|             <plugin>
 | ||
|                 <groupId>org.apache.maven.plugins</groupId>
 | ||
|                 <artifactId>maven-surefire-plugin</artifactId>
 | ||
|                 <configuration>
 | ||
|                     <!-- 跳过单元测试 -->
 | ||
|                     <skip>true</skip>
 | ||
|                 </configuration>
 | ||
|             </plugin>
 | ||
|             <!-- Maven 打包插件 -->
 | ||
|             <plugin>
 | ||
|                 <groupId>org.apache.maven.plugins</groupId>
 | ||
|                 <artifactId>maven-jar-plugin</artifactId>
 | ||
|                 <configuration>
 | ||
|                     <!-- 排除配置文件 -->
 | ||
|                     <excludes>
 | ||
|                         <exclude>${config-path}/</exclude>
 | ||
|                     </excludes>
 | ||
|                     <archive>
 | ||
|                         <manifest>
 | ||
|                             <mainClass>${main-class}</mainClass>
 | ||
|                             <!-- 为 MANIFEST.MF 中的 Class-Path 加入依赖 jar 目录前缀 -->
 | ||
|                             <classpathPrefix>../${lib-path}/</classpathPrefix>
 | ||
|                             <addClasspath>true</addClasspath>
 | ||
|                             <!-- jar 包不包含唯一版本标识 -->
 | ||
|                             <useUniqueVersions>false</useUniqueVersions>
 | ||
|                         </manifest>
 | ||
|                         <manifestEntries>
 | ||
|                             <!--为 MANIFEST.MF 中的 Class-Path 加入配置文件目录前缀 -->
 | ||
|                             <Class-Path>../${config-path}/</Class-Path>
 | ||
|                         </manifestEntries>
 | ||
|                     </archive>
 | ||
|                     <outputDirectory>${project.build.directory}/app/${bin-path}</outputDirectory>
 | ||
|                 </configuration>
 | ||
|             </plugin>
 | ||
|             <!-- 拷贝依赖 jar -->
 | ||
|             <plugin>
 | ||
|                 <groupId>org.apache.maven.plugins</groupId>
 | ||
|                 <artifactId>maven-dependency-plugin</artifactId>
 | ||
|                 <executions>
 | ||
|                     <execution>
 | ||
|                         <id>copy-dependencies</id>
 | ||
|                         <phase>package</phase>
 | ||
|                         <goals>
 | ||
|                             <goal>copy-dependencies</goal>
 | ||
|                         </goals>
 | ||
|                         <configuration>
 | ||
|                             <outputDirectory>${project.build.directory}/app/${lib-path}</outputDirectory>
 | ||
|                         </configuration>
 | ||
|                     </execution>
 | ||
|                 </executions>
 | ||
|             </plugin>
 | ||
|             <!-- 拷贝配置文件 -->
 | ||
|             <plugin>
 | ||
|                 <groupId>org.apache.maven.plugins</groupId>
 | ||
|                 <artifactId>maven-resources-plugin</artifactId>
 | ||
|                 <executions>
 | ||
|                     <execution>
 | ||
|                         <id>copy-resources</id>
 | ||
|                         <phase>package</phase>
 | ||
|                         <goals>
 | ||
|                             <goal>copy-resources</goal>
 | ||
|                         </goals>
 | ||
|                         <configuration>
 | ||
|                             <resources>
 | ||
|                                 <resource>
 | ||
|                                     <directory>src/main/resources</directory>
 | ||
|                                     <includes>
 | ||
|                                         <include>${config-path}/</include>
 | ||
|                                     </includes>
 | ||
|                                 </resource>
 | ||
|                             </resources>
 | ||
|                             <outputDirectory>${project.build.directory}/app</outputDirectory>
 | ||
|                         </configuration>
 | ||
|                     </execution>
 | ||
|                 </executions>
 | ||
|             </plugin>
 | ||
|         </plugins>
 | ||
|     </build>
 | ||
| </project> |