从0开始搭建后台管理系统,这是No2,上一篇我们讲到了Trae配置java开发环境。这一节我们来说说如何用Trae创建Maven的多module项目。
Trae的Maven设置
点击Trae开发工具的“设置”->“Editor设置”->“去设置”->“打开设置(json)”,看看有没有如下内容,没有则添加(添加的时候记得修改为自己的文件路径)
"java.configuration.maven.userSettings": "D:\\dev\\maven\\apache-maven-3.9.5-bin\\apache-maven-3.9.5\\conf\\settings-work.xml",
"maven.executable.path": "D:\\dev\\maven\\apache-maven-3.9.5-bin\\apache-maven-3.9.5\\bin\\mvn.cmd",
java.configuration.maven.userSettings的作用是指定maven的配置文件,我的settings-work.xml内容如下,可供参考:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!--本地仓库。该值表示构建系统本地仓库的路径。其默认值为${user.home}/.m2/repository。 -->
<localRepository>F:\dev\lib\work</localRepository>
<!--配置服务端的一些设置。如果局域网内部有nexus,需要管理项目jar包可配置 -->
<servers>
</servers>
<!--为仓库列表配置的下载镜像列表-->
<mirrors>
<!--给定仓库的下载镜像-->
<mirror>
<id>aliyun</id>
<mirrorOf>central</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
<!-- 仓库配置 -->
<profiles>
<!--根据环境参数来调整的构件的配置 -->
<profile>
<!--该配置的唯一标识符 -->
<id>work_profile</id>
<!-- 远程仓库列表 -->
<repositories>
<repository>
<id>aliyun</id>
<name>aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<!-- 配置插件下载的仓库列表-->
<pluginRepositories>
<pluginRepository>
<id>thirdparty_repository</id>
<name>thirdparty_repository</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<!-- 激活所使用的配置-->
<activeProfiles>
<activeProfile>work_profile</activeProfile>
</activeProfiles>
</settings>
Maven环境变量设置
若之前已经配置,则这一步可跳过。
在环境变量的系统变量中添加,M2_HOME,变量值为Maven的安装路径,我这里的路径是:
D:\dev\maven\apache-maven-3.9.5-bin\apache-maven-3.9.5
配置的时候修改为自己的路径即可。
修改系统变量Path,增加如下配置:
%M2_HOME%\bin
命令行检测,在Trae开发工具中点击“查看”->“终端”,打开终端后输入如下命令:
mvn -version
显示如下如内容,则说明配置成功。

Trae创建Maven多module项目
1、ctrl+shift+P打开命令面板,输入Spring Initializr,如下图所示:

2、选择Spring Initializr: Generate a Maven Project。过程中若出现错误“Failed to create a project. Failed to fetch metadata.”,通常是网络问题,可使用代理。正常情况下会弹出Spring Boot版本选择,如下所示:

3、创建主项目:spring boot版本选择3.5.9,接下来语言选择Java,Group Id输入”cn.lovecto”,Enter后输入Artifact ID(我输入“yuen”),Enter后选择打包方式“jar”(后面改),选择java版本(我选17),Choose dependencies选择依赖(我选择Selected 0 dependencies),接下来选择项目存放的位置(我这里选择的是”F:\dev\code\myself\lovecto\yuen”),打开目录查看,如下所示:

主项目已经生成。
4、参考3的操作,创建子项目yuen-framework、yuen-app,只是这2个子项目选择项目存放位置为“F:\dev\code\myself\lovecto\yuen\yuen”
5、用Trae打开刚刚创建的项目“F:\dev\code\myself\lovecto\yuen”,如下所示:

6、删除主项目多余的文件(src、target),修改主项目pom.xml,如下:
<?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>3.5.9</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>cn.lovecto</groupId>
<artifactId>yuen</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 打包方式 -->
<packaging>pom</packaging>
<!-- 子模块 -->
<modules>
<module>yuen-framework</module>
<module>yuen-app</module>
</modules>
<name>yuen</name>
<!-- 项目描述 -->
<description>一个新的后台管理系统</description>
<properties>
<java.version>17</java.version>
</properties>
<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>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
7、修改子项目yuen-app的pom.xml,如下:
<?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>cn.lovecto</groupId>
<artifactId>yuen</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath> <!-- lookup parent from repository -->
</parent>
<groupId>cn.lovecto</groupId>
<artifactId>yuen-app</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 打包方式 -->
<packaging>jar</packaging>
<name>yuen-app</name>
<!-- 项目描述 -->
<description>一个新的后台管理系统 应用启动入口</description>
</project>
8、修改子项目yuen-framework,删src、target,修改pom.xml,如下:
<?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>cn.lovecto</groupId>
<artifactId>yuen</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath> <!-- lookup parent from repository -->
</parent>
<groupId>cn.lovecto</groupId>
<artifactId>yuen-framework</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 打包方式选择pom,用于管理子模块 -->
<packaging>pom</packaging>
<name>yuen-framework</name>
<!-- 项目描述 -->
<description>一个新的后台管理系统 框架模块</description>
</project>
由于yuen-framework后续还需要添加子模块,所以打包方式是pom。
9、关闭Trae开发工具,重新打开,在yuen-app下找到YuenAppApplication,在main方法上点“Run”,就能看到运行效果了。
LoveCTO

