标签:fir mic ring 不能 版本 global unit web eclipse
在Eclipse中配置Maven
1.指定Maven核心程序的位
Window→Preferences→Maven→Installations --(Installation home:D:\apache-maven-3.2.2)
2.指定settings.xml
Window→Preferences→Maven→User Settings --(Global Setting:D:\apache-maven-3.2.2\conf\settings.xml)
自动查找settings.xml中Local Repository:(D:\RepMaven)
修改工程默认的JDK版本:
D:\apache-maven-3.2.2\conf\settings.xml下
<profile>
<id>jdk-1.8</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>
创建Maven项目
new→New Maven project(勾选Create a simple project,然后next)
→Artifact下(Group Id:com.atguigu.maven ; Artifact Id:MakeFriend,然后finish)
导入 Maven工程:
如果第一次导入手动创建的Maven工程:
Import→Maven→Existing Maven Project(next)→Root Directory:直接选择工作空间(会自动扫描,勾选后,Finish)
导入后HelloFriend工程,目录:D:\SpringToolSuite\HelloFriend下
会多出:
.settings
.classpath
.project
如果导入通过Eclipse创建的Maven工程:
可以Import→General→Existing Projects into Workspace
运行Maven工程
工程右键Run As,可选build:
1.Maven build
2.Maven build...
3.Maven clean --清理
4.Maven generate-sources
5.Maven install --安装
6.Maven test --测试
如果没有想要的命令:可以选择2.Maven build...,Main中(Goals:compile)点击Run
解决项目测试乱码问题:
在当前项目的pom.xml文件中增加插件配置
<build>
<plugins>
<!-- 解决maven test命令时console出现中文乱码乱码 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.7.2</version>
<configuration>
<forkMode>once</forkMode><!--在一个进程中进行所有测试 ; 默认值:once -->
<argLine>-Dfile.encoding=UTF-8</argLine>
</configuration>
</plugin>
</plugins>
</build>
Maven项目依赖的范围
1) compile
[1]main目录下的Java代码可以访问这个范围的依赖
[2]test目录下的Java代码可以访问这个范围的依赖
[3]部署到Tomcat服务器上运行时要放在WEB-INF的lib目录下
例如:对Hello的依赖。主程序、测试程序和服务器运行时都需要用到。
2) test
[1]main目录下的Java代码不能访问这个范围的依赖
[2]test目录下的Java代码可以访问这个范围的依赖
[3]部署到Tomcat服务器上运行时不会放在WEB-INF的lib目录下
例如:对junit的依赖。仅仅是测试程序部分需要。
3) provided
[1]main目录下的Java代码可以访问这个范围的依赖
[2]test目录下的Java代码可以访问这个范围的依赖
[3]部署到Tomcat服务器上运行时不会放在WEB-INF的lib目录下
例如:servlet-api在服务器上运行时,Servlet容器会提供相关API,所以部署的时候不需要。
4)runtime
[1]main目录下的Java代码不能访问这个范围的依赖
[2]test目录下的Java代码可以访问这个范围的依赖
[3]部署到Tomcat服务器上运行时要放在WEB-INF的lib目录下
其他:import、system等。
Maven项目依赖的传递性
当存在间接依赖的情况时,主工程对间接依赖的jar可以访问吗?这要看间接依赖的jar包引入时的依赖范围——只有依赖范围为compile时可以访问。
Maven项目依赖的原则:解决jar包冲突
1) 路径最短者优先
2) 路径相同时先声明者优先
这里“声明”的先后顺序指的是dependency标签配置的先后顺序。
标签:fir mic ring 不能 版本 global unit web eclipse
原文地址:https://www.cnblogs.com/YUJIE666/p/12246448.html