maven报错Missing artifact jdk.tools:jdk.tools:jar:1.8解决方案
来源:互联网 发布:网站美工学那些软件 编辑:程序博客网 时间:2024/06/06 00:52
在eclipse中,遇到了Missing artifact jdk.tools:jdk.tools:jar:1.8。其他也没有报错,感到很奇怪。
原因:tools.jar包是JDK自带的,pom.xml中以来的包隐式依赖tools.jar包,而tools.jar并未在库中,
只需要将tools.jar包添加到jdk库中即可。
解决方案:在pom文件中添加如下代码即可。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
如下图,为解决之后的截图:
HDFS(四)--Maven环境搭建
目录
HDFS(四)--Maven环境搭建..............................1
Maven是什么?.....................................1
Maven历史.........................................1
Maven目标.........................................2
Windows下安装.....................................2
1. JDK 和 JAVA_HOME.............................2
2. 下载Apache Maven............................2
3. 添加 M2_HOME 和 MAVEN_HOME...................3
4. 添加到环境变量 - PATH........................4
5. 验证.........................................4
Linux下安装.......................................4
maven 常用命令:...................................5
命令行创建maven项目............................6
eclipse 集成 maven 插件:..........................6
eclipse配置 maven.................................7
Maven本地仓库....................................11
maven dependcy 查看:..........................11
<!--仓库列表-->................................11
下载jar 包的流程:............................12
本地仓库:.....................................12
ApacheMaven是一个软件项目管理和综合工具。基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件。
Maven是什么?
Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。
在多个开发团队环境时,Maven可以设置按标准在非常短的时间里完成配置工作。由于大部分项目的设置都很简单,并且可重复使用,Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。
Maven提供了开发人员的方式来管理:
· Builds
· Documentation
· Reporting
· Dependencies
· SCMs
· Releases
· Distribution
· mailing list
概括地说,Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。
Maven历史
Maven最初设计,是以简化Jakarta Turbine项目的建设。在几个项目,每个项目包含了不同的Ant构建文件。 JAR检查到CVS。
Apache组织开发Maven可以建立多个项目,发布项目信息,项目部署,在几个项目中JAR文件提供团队合作和帮助。
Maven目标
Maven主要目标是提供给开发人员:
· 项目是可重复使用,易维护,更容易理解的一个综合模型。
· 插件或交互的工具,这种声明性的模式。
Maven项目的结构和内容在一个XML文件中声明,pom.xml 项目对象模型(POM),这是整个Maven系统的基本单元。有关详细信息,请参阅Maven POM的部分。
Apache Maven 是一种创新的软件项目管理工具,提供了一个项目对象模型(POM)文件的新概念来管理项目的构建,相关性和文档。最强大的功能就是能够自动下载项目依赖库。
Windows下安装
1. JDK 和 JAVA_HOME
确保已安装JDK,并 “JAVA_HOME”变量已加入到 Windows 环境变量。
注
Maven 3.2 要求 JDK 1.6 或以上版本, 而 Maven 3.0/3.1 需要 JDK 1.5 或以上
2. 下载Apache Maven
访问 http://maven.apache.org/download.cgi,打开后找到下载链接
下载 Maven 的 zip 文件,例如: apache-maven-3.3.3-bin.zip,将它解压到你要安装 Maven 的文件夹。
3. 添加 M2_HOME 和 MAVEN_HOME
添加 M2_HOME 和 MAVEN_HOME 环境变量到 Windows 环境变量,并将其指向你的 Maven 文件夹。
M2_HOME或MAVEN_HOME
Maven说只是添加M2_HOME,但一些项目仍引用Maven的文件夹MAVEN_HOME,因此,为了安全也把它添加进去。
4. 添加到环境变量 - PATH
更新 PATH 变量,添加 Maven bin 文件夹到 PATH 的最后,如: %M2_HOME%\bin, 这样就可以在命令中的任何目录下运行 Maven命令了。
5. 验证
完成,以验证它,执行 mvn –version 在命令提示符下,如下图输出结果:
如果你看到类似消息,说明 Apache Maven 在 Windows 上已安装成功。
Linux下安装
下载对应安装包,解压到指定文件夹
在/etc/profile文件中配置maven环境变量
[etc/environment]
M2_HOME=/data/apache-maven-3.0.5
PATH=...:/data/apache-maven-3.0.5/bin
使配置文件生效
重新登录命令行,验证是否配置成功
maven 常用命令:
1. mvn -v 或者 mvn -version:
验证环境变量
2. mvn help:system
打印出所有的系统属性和环境变量
3. mvn compile:
编译项目源代码(不会编译test 目录的元代)(会产生target文件)
4. mvn test: 运行应用程序中的单元测试
5. mvn test-compile 编译测试代码,compile 之后生成的targer 文件夹 主程序编译在classes 文件夹下面,测试程序代码放在test-classes 文件夹下
6. mvn clean 删除target 文件夹
测试工程:
1)创建hello-world项目所在文件夹
2)在hello-world文件夹下创建pom.xml并添加内容
<?xml version="1.0"?>
<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.0http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.neworigin.hello-world</groupId>
<artifactId>hello-world</artifactId>
<version>1.0-SNAPSHOT</version>
<name>maven hello worldproject</name>
</project>
3)创建文件夹
>cdhello-world
>mkdir -psrc/main/java
4) 创建HelloWorld.java文件
packagecom.neworigin.helloworld;
public classHelloWorld
{
public static void main( String[] args )
{
System.out.println( "HelloWorld!" );
}
}
5)在pom.xml文件所在目录运行mvn clean compile
>cd hello-world
>mvn clean compile //clean:删除target文件夹,compile编译源代码
6) 运行编译类
>javacom.neworigin.helloworld.HelloWorld
首次运行完mvn -version后,会在用户目录下创建一个.m2的目录(比如:C:\Users\当前用户名\.m2\),这个目录是maven的“本地仓库”。
试想一下,我们会在工作中同时创建很多项目,每个项目可能都会引用一些公用的jar包,一种作法是每个项目里,都复制一份这些依赖的jar包,这样显然不好,相同的文件在硬盘上保存了多份,太占用空间,而且这些依赖的jar包的版本也不太好管理(比如某个公用的jar包,从1.0升级到2.0,如果所有引用这个jar包的项目都需要更新,必须一个个项目的修改)。
maven的仓库则很好的解决了这些问题,它在每台机器上创建一个本机仓库,把本机上所有maven项目依赖的jar包统一管理起来,而且这些jar包用“坐标”来唯一标识(注:这里只要简单理解成“唯一识别某个jar包文件名、版本号”的标识即可),这样所有maven项目就不需要再象以前那样把jar包复制到lib目录中,整个maven项目看起来十分清爽。
maven默认的仓库地址为:${user}/.m2/repository/,都是在用户目录下,我们可以按照需要修改本地仓库位置。具体操作如下。在maven目录下找到conf目录中的setting.xml,将其中的<localRepository>xxxx</localRepository>设置为自己的本地仓库路径。
命令行创建maven项目
mvn archetype:generate -DgroupId=com.xxx.xxx-DartifactId=xxx -Dversion=1.0-SNAPSHOT -Dpackage=com.xxx
一般情况
-DgroupId 公司名称反写+项目名称
-DartifactId 项目名称-模块名称
-Dversion 项目版本号
-Dpackage 源码包目录
NOTE:DgroupId 和Dpackage 是相同的,官方推荐的,看起来更加清晰
eclipse 集成 maven 插件:
1. eclipse 已经系统集成
通常情况,eclipse已经系统集成了maven插件
2. 如果没有eclipse 没有系统集成:
a.在线安装
1.1 Help--Install New SoftWare
1.2 添加maven 插件地址
1.3 勾选对应的选项
1.4 下载好 记得重启eclipse
1.5 验证:window-->perferences-->maven
b.离线安装(推荐)
1.1 下载好maven 插件
1.2 解压到 eclipse/dropins 目录
1.3 重启eclipse
1.4 验证:window-->perferences-->maven
eclipse配置 maven
1.在Preferences-->Maven-->Installations点击 Add 按钮,选到你本机安装 Maven 的路径值
2.在Preferences-->Maven-->User Settings中,点击Update Settings,加载刚才我们 对settings.xml的更改
3. 创建maven 项目:
右击空白处 new ---> other--->maven project
4. 修改为本地的jdk 目录:
右击JRE System Library-->Properties-->修改为本地的JRE
5. 编译运行maven项目:
右击pom.xml-->runas-->maven build
Maven本地仓库
maven dependcy 查看:
http://search.maven.org/
http://mvnrepository.com/
NOTE: 推荐大家 手动指定文件夹与包名一致
大家发现mvn compile 会去下载项目所依赖的jar包
Downloading:https://repo.maven.apache.org/maven2/junit/junit/xxx
lib/maven-model-builder-3.3.9.jar (Object)
<!--仓库列表-->
<repositories>
<repository>
<!--中央仓库的物理标识-->
<id>central</id>
<!-仓库的名称--->
<name>Central Repository</name>
<!-- 链接的url -->
<url>https://repo.maven.apache.org/maven2</url>
<!--默认路径-->
<layout>default</layout>
<!--禁止下载 snapshot-->
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
maven 所提供的中央仓库
下载jar 包的流程:
我们compile 的时候
1. 会去本地仓库查找是否有对应的jar(依赖)
2. 如果没有默认会去maven 中央仓库进行下载
本地仓库:
可以在settings.xml文件中配置本地仓库位置
<!-- localRepository
| The path to the local repository maven will use tostore artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
NOTE:
镜像仓库:
maven 的中央远程仓库服务器是在国外的,大天朝对国外的部分网站访问不是太好,所以国内有人将已经下载好的jar 提供给大家进行下载
可以在settings.xml文件总配置镜像地址
--mirrors
--mirror:
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
对于maven setttings.xml 一般不建议修改maven安装目录下的conf/settings.xml (全局),推荐大家拷贝settings.xml 到你对应的本地仓库目录下面(C:\Users\daibin\.m2/settings.xml)进行修改
运行jar包:
>java -cphelloworld-0.0.1-SNAPSHOT.jar com.neworigin.helloworld.HelloWorld
- maven报错Missing artifact jdk.tools:jdk.tools:jar:1.8解决方案
- maven报错Missing artifact jdk.tools:jdk.tools:jar:1.8解决方案
- Maven报错:Missing artifact jdk.tools:jdk.tools:jar:1.8
- maven中报错“Missing artifact jdk.tools:jdk.tools:jar:1.8”
- Maven搭建hadoop环境报Missing artifact jdk.tools:jdk.tools:jar:1.8
- Maven报错Missing artifact jdk.tools:jdk.tools:jar:1.7
- Hadoop Maven项目报错:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Maven报错Missing artifact jdk.tools:jdk.tools:jar:1.7
- maven:missing artifact jdk.tools:jar:1.7
- 关于pom.xml文件下Missing artifact jdk.tools:jdk.tools:jar:1.8报错
- Maven错误信息:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Maven错误信息:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Maven错误信息:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Maven错误信息:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Maven Missing artifact jdk.tools:jdk.tools:jar:1.7 解决办法
- Maven错误信息:Missing artifact jdk.tools:jdk.tools:jar:1.6
- Eclipse Maven "Missing artifact jdk.tools:jdk.tools:jar:1.6"
- maven 解决Missing artifact jdk.tools:jdk.tools:jar:1.6
- 使用d3画横向组织架构图,兼容ie8 (二)
- java 内存的监控
- CodeForces 873B Balanced Substring(前缀和+思维)
- maven可用的镜像
- 数人金|服务网格新生代Istio进化,与传统模式相较5大特性更助容器扩展
- maven报错Missing artifact jdk.tools:jdk.tools:jar:1.8解决方案
- JVM内存模型你只要看这一篇就够了
- MyBatis中typealiases的使用
- java学习书单
- 数人金|两个故事,看12要素如何助力亚马逊和Netflix开启云原生大门
- Angular4-在线竞拍应用-依赖注入
- C语言资料收集的几张表格(文件打开方式,运算优先级,ASCII码表),供需要时查阅。
- Python进程管理工具Supervisor
- vue小笔记 打包之后,刷新页面出现404的问题