debian/linux 配置maven
1.下载maven相关包 http://maven.apache.org/download.cgi
linux版本: http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
2.修改/etc/profile
nano etc/profile,在最后加上
#set maven home
export MAVEN_HOME=/light/maven/
export PATH=$PATH:/MAVEN_HOME/bin:$PATH
立即生效source profile
3.mvn -v查看maven版本信息
4.eclipse设置maven配置信息
5.maven-lib下setting.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>/witts/work/maven_source/lib</localRepository> <!--Maven是否需要和用户交互以获得输入。如果Maven需要和用户交互以获得输入,则设置成true,反之则应为false。默认为true。 --> <interactiveMode>true</interactiveMode> <!--Maven是否需要使用plugin-registry.xml文件来管理插件版本。 --> <!--如果设置为true,则在{user.home}/.m2下需要有一个plugin-registry.xml来对plugin的版本进行管理 --> <!--默认为false --> <usePluginRegistry>false</usePluginRegistry> <!--表示Maven是否需要在离线模式下运行。如果构建系统需要在离线模式下运行,则为true,默认为false。 --> <!--当由于网络设置原因或者安全因素,构建服务器不能连接远程仓库的时候,该配置就十分有用。 --> <offline>false</offline> <!--当插件的组织Id(groupId)没有显式提供时,供搜寻插件组织Id(groupId)的列表。 --> <!--该元素包含一个pluginGroup元素列表,每个子元素包含了一个组织Id(groupId)。 --> <!--当我们使用某个插件,并且没有在命令行为其提供组织Id(groupId)的时候,Maven就会使用该列表。 --> <!--默认情况下该列表包含了org.apache.maven.plugins。 <pluginGroups> <pluginGroup>org.codehaus.mojo</pluginGroup> </pluginGroups> --> <!-- 所有构建活动的配置文件列表--> <!-- <activeProfiles> <activeProfile>alwaysActiveProfile</activeProfile> <activeProfile>anotherAlwaysActiveProfile</activeProfile> </activeProfiles> --> <!--配置服务端的一些设置。一些设置如安全证书不应该和pom.xml一起分发。这种类型的信息应该存在于构建服务器上的settings.xml文件中。 --> <servers> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers> <!--为仓库列表配置的下载镜像列表。 --> <mirrors> <!--给定仓库的下载镜像。内网 --> <mirror> <id>nexus</id> <mirrorOf>central</mirrorOf> <name>frame</name> <url>http://192.168.0.126:8081/nexus/content/groups/public/</url> </mirror> <!--给定仓库的下载镜像。内网 --> <mirror> <id>nexus</id> <mirrorOf>3rd</mirrorOf> <name>frame</name> <url>http://192.168.0.126:8081/nexus/content/repositories/thirdparty/</url> </mirror> <!--阿里云MAVEN镜像地址 --> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors> <!--根据环境参数来调整构建配置的列表。settings.xml中的profile元素是pom.xml中profile元素的裁剪版本。--> <!--它包含了id,activation, repositories, pluginRepositories和 properties元素。--> <!--这里的profile元素只包含这五个子元素是因为这里只关心构建系统这个整体(这正是settings.xml文件的角色定位),而非单独的项目对象模型设置。--> <!--如果一个settings中的profile被激活,它的值会覆盖任何其它定义在POM中或者profile.xml中的带有相同id的profile。 --> <profiles> <!--设置全局JDK18--> <profile> <id>jdk18</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile> <plugin></plugin> <!-- 配置远程发布到私服,mvn deploy--> <distributionManagement> <repository> <id>releases</id> <name>Nexus Release Repository</name> <url>http://192.168.0.126:8081/nexus/content/repositories/releases/</url> </repository> <snapshotRepository> <id>snapshots</id> <name>Nexus Snapshot Repository</name> <url>http://192.168.0.126:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> </profiles> </settings>
6.项目pox.xml信息如下
<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> <groupId>cc.zeelan.services</groupId> <artifactId>seller-auth-service</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 私有包版本定义开始 --> <rpc.framework.spring.version>0.0.1-SNAPSHOT</rpc.framework.spring.version> <spring.version>5.0.2.RELEASE</spring.version> <store.entity.version>0.0.1-SNAPSHOT</store.entity.version> <product.entity.version>0.0.1-SNAPSHOT</product.entity.version> <cmqutils.version>0.0.1-SNAPSHOT</cmqutils.version> <mybatis.paginator.version>1.2.17.2</mybatis.paginator.version> <mybatis.version>3.4.2.1</mybatis.version> <!-- 私有包版本定义结束 --> <!-- 业务包版本定义开始 --> <seller.auth.version>0.0.1-SNAPSHOT</seller.auth.version> <seller.core.utils.version>0.0.1-SNAPSHOT</seller.core.utils.version><!-- 工具包 --> <!-- 业务包版本定义结束 --> <mybatis.spring.version>1.3.1</mybatis.spring.version> <mysql.connector.java.version>8.0.8-dmr</mysql.connector.java.version> <servlet.version>4.0.0</servlet.version> <json.version>2.9.0</json.version> <druid.version>1.1.6</druid.version> <pinyin4j.version>2.5.0</pinyin4j.version> <com.github.abel533.version>2.3.4</com.github.abel533.version> <spring.data.redis.version>2.0.2.RELEASE</spring.data.redis.version> <redis.clients.version>2.9.0</redis.clients.version> <aspectjweaver.version>1.8.13</aspectjweaver.version> <javax.el.version>2.2.4</javax.el.version> </properties> <repositories> <repository> <id>nexus</id> <name>Team Nexus Repository</name> <url>http://192.168.0.126:8081/nexus/content/groups/public</url> </repository> <repository> <id>thirdparty</id> <name>Team Nexus Repository</name> <url>http://192.168.0.126:8081/nexus/content/repositories/thirdparty</url> </repository> <repository> <id>snapshots</id> <name>Team Nexus Repository</name> <url>http://192.168.0.126:8081/nexus/content/repositories/snapshots</url> </repository> </repositories> <dependencies> <dependency> <groupId>com.zeelan.app</groupId> <artifactId>seller-auth</artifactId> <version>${seller.auth.version}</version> </dependency> <dependency> <groupId>com.zeelan.app</groupId> <artifactId>seller-core-utils</artifactId> <version>${seller.core.utils.version}</version> </dependency> <dependency> <groupId>cc.zeelan.framework.rpc.spring</groupId> <artifactId>rpc-framework-spring</artifactId> <version>${rpc.framework.spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>${druid.version}</version> </dependency> <!-- ##########################################分页配置############################################# --> <dependency> <groupId>com.github.miemiedev</groupId> <artifactId>mybatis-paginator</artifactId> <version>${mybatis.paginator.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>${mybatis.spring.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.connector.java.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>com.github.abel533</groupId> <artifactId>mapper</artifactId> <version>${com.github.abel533.version}</version> </dependency> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>${aspectjweaver.version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>${servlet.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${json.version}</version> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> <version>${spring.data.redis.version}</version> </dependency> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>${redis.clients.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.connector.java.version}</version> </dependency> <!-- ######################################数据库相关配置结束###################################### --> <!-- https://mvnrepository.com/artifact/com.belerweb/pinyin4j --> <dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifactId> <version>${pinyin4j.version}</version> </dependency> <dependency> <groupId>javax.el</groupId> <artifactId>javax.el-api</artifactId> <version>${javax.el.version}</version> </dependency> <dependency> <groupId>org.glassfish.web</groupId> <artifactId>javax.el</artifactId> <version>${javax.el.version}</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> <archive> <manifest> <mainClass>cc.zeelan.service.store.init.App</mainClass> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/spring.handlers</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>cc.zeelan.app.AppInit</mainClass> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/spring.schemas</resource> </transformer> </transformers> <!-- <minimizeJar>true</minimizeJar> --> </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> <encoding>UTF-8</encoding> <outputDirectory> ${project.build.directory} </outputDirectory> <!-- 表示把配置文件拷到和jar包同一个路径下 --> <resources> <resource> <directory>src/main/resources/</directory> <!-- <excludes> <exclude>*.xml</exclude> </excludes> --> </resource> </resources> </configuration> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. --> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>1.0.0</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId> org.apache.maven.plugins </groupId> <artifactId> maven-antrun-plugin </artifactId> <versionRange> [1.8,) </versionRange> <goals> <goal>run</goal> </goals> </pluginExecutionFilter> <action> <ignore></ignore> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步