clean: 执行该命令会删除项目路径下的target文件,但是不会删除本地的maven仓库已经生成的jar文件 compile: 编译命令,只编译选定的目标,不管之前是否已经编译过,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。 package: 这个命令会在你的项目路径下一个target目录,并且拥有compile命令的功能进行编译,同时会在target目录下生成项目的jar/war文件。如果a项目依赖于b项目,打包b项目时,只会打包到b项目下target下,编译a项目时就会报错,因为找不到所依赖的b项目,说明a项目在本地仓库是没有找到它所依赖的b项目,这时就用到install命令了 install: 该命令包含了package命令功能,不但会在项目路径下生成class文件和jar包,同时会在你的本地maven仓库生成jar文件,供其他项目使用(如果没有设置过maven本地仓库,一般在用户/.m2目录下。如果a项目依赖于b项目,那么install b项目时,会在本地仓库同时生成pom文件和jar文件,解....
问题背景 最近针对一个老的单体spring boot项目进行多模块拆分,拆分为三个模块 xx-a, xx-b,xx-core,其中a,b两个模块都依赖core模块,拆分过程中很简单就是老的代码都先放到a模块,把service,entity,mapper都抽到core,然后整体作为a的依赖。项目起初看起来很正常,但是通过maven打包,则提示a模块中依赖的core 模块中的java 类找不到,但是IDEA没报错啊,也能点击链接过去,后来发现父级模块的maven build plugin为: <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> 问题就是出在这个plugin上,父级模块应该使用maven插件而不是这个 <plugins> <plugin> <!-- 指定JDK编译版本 --> <groupI.....
好好的springBoot项目找不到mysql url,仔细一看端口也不对,之前是好好的 target里没有 resources文件夹下的文件?? 配置 pom.xml <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> <include>**/*.yml</include> </includes> <filtering>false</filtering> </resource> </resources> 发现也不起作用! 最后解决方法,把 resources文件夹添加到idea资源中重新clean 再编译一下就行了。。
Maven 使用本地Jar包的几种方式: 1、dependency 本地jar包 <dependency> <groupId>com.jd.open.api</groupId> <artifactId>open-api-sdk</artifactId> <version>2.0</version> <!--system,类似provided,需要显式提供依赖的jar以后,Maven就不会在Repository中查找它--> <scope>system</scope> <!--项目根目录下的lib文件夹下--> <systemPath>${project.basedir}/libs/open-api-sdk-2.0-2022-03-02.jar</systemPath> </dependency> 2、编译阶段指定外部lib 暂时没理解 <plugin> <artifactId>maven-c....
<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"> <!--父项目的坐标。如果项目中没有规定某个元素的值,那么父项目中的对应值即为项目的默认值。 坐标包括group ID,artifact ID和 version。 --> <parent> <!--被继承的父项目的构件标识符 --> <artifactId /> <!--被继承的父项目的全球唯一标识符 --> <groupId /> <!--被继承的父项目的版本 --> <version /> <!--父项目的pom.xml文件的相对路径。相对路径允许你选择一个不同的路径....
在使用MybatisPlus插件时普通增删改茶泡的好好的,自己写了一个方法就不行了报错! Invalid bound statement (not found): org.minimalist.modules.user.mapper.SysUserMapper.findUserByUserName 其实这边是在tager中找不到那个xml文件造成的,解决这个问题可以通过配置maven来解决 <build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build> 在build加上上边代码,clean后在重启看看有没有吧,不过我这边也......
在Maven多模块的时候,管理依赖关系是非常重要的,各种依赖包冲突,查询问题起来非常复杂,于是就用到了 <dependencyManagement>, 示例说明, 在父模块中: <dependencyManagement> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.44</version> </dependency> </dependencies> </dependencyManagement> 那么在子模块中只需要 <groupId>和 <artifactId>即可,如: <dependencies> <dependency> <groupId>mysql</groupId> ......
1、下载 wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz 也可以在浏览器去maven官网下载需要的版本,这里安装的是二进制包,所以选择“-bin.tar.gz”结尾的包 2、解压 tar -xf apache-maven-3.6.3-bin.tar.gz -C /usr/local/ mv /usr/local/apache-maven-3.6.3/ /usr/local/maven3.6/ 3、加入环境变量 在/etc/profile文件最下方加入新的一行 export PATH=$PATH:/usr/local/maven3.6/bin 添加完后,执行 source /etc/profile,让配置生效 验证: 执行 which mvn 显示/usr/local/maven3.6/bin/mvn就说明配置成功了 4、JAVA环境 运行maven需要Java环境----系统安装有jdk,并且在系统中配置了JAVA_......