Eclipse maven工程 Missing artifact com.sun:tools:jar:1.7.0:system 解决方法

 解决方案一:通过maven取运行时参数,eclipse提供的环境变量,基本类似System.getProperty("java.home")

  1. <dependency>      
  2.     <groupId>com.sun</groupId>      
  3.     <artifactId>tools</artifactId>      
  4.     <version>1.5.0</version>      
  5.     <scope>system</scope>      
  6.     <systemPath>${java.home}/lib/tools.jar</systemPath>      
  7. </dependency>    

如果不起作用的话,$(java.home)eclipse解析的不对,eclipse 没有使用 JAVA_HOME 默认,eclipse 使用 C:"windows"system32"javaw.exe 作为 JVM,当然找不到tools.jar

解决方法如下: 修改 eclipse.exe 目录下的 eclipse.ini 指定vm,注意 -vm后面不能有空格。


  1. -vm
  2. D:\Program Files\Java\jdk1.6.0_23\bin\javaw.exe
  3. -vmargs
  4. -Dosgi.requiredJavaVersion=1.6
  5. -Xms40m
  6. -Xmx512m
  7. -XX:PermSize=64M
  8. -XX:MaxPermSize=512M

 

注意: 要写在两行,写在一行不能生效
注意: 这两行要定在-vmargs之前,不然也不能生效

 解决方案二:


  1. <properties>    
  2. <project.build.sourceEncoding>UTF8</project.build.sourceEncoding>    
  3.     <java.home>C:\Program Files\Java\jdk1.6.0_25</java.home>      
  4.  </properties>    
  5. <profiles>      
  6.        <profile>      
  7.            <id>default-tools.jar</id>      
  8.            <activation> 
  9.         <activeByDefault>true</activeByDefault>       
  10.                <property>      
  11.                    <name>java.vendor</name>      
  12.                    <value>Sun Microsystems Inc.</value>      
  13.                </property>      
  14.            </activation>      
  15.            <dependencies>      
  16.                <dependency>      
  17.                    <groupId>com.sun</groupId>      
  18.                    <artifactId>tools</artifactId>      
  19.                    <version>1.5.0</version>      
  20.                    <scope>system</scope>      
  21.                    <systemPath>${java.home}/lib/tools.jar</systemPath>      
  22.                </dependency>      
  23.            </dependencies>      
  24.        </profile>      
  25.    </profiles>    
通过profile来设置,方便决定是否启用 
 
解决方案三:
 

  1. <dependency> 
  2.     <groupId>com.sun</groupId> 
  3.     <artifactId>tools</artifactId> 
  4.     <version>1.6.0</version> 
  5.     <scope>system</scope> 
  6.     <systemPath>${env.JAVA_HOME}/lib/tools.jar</systemPath> 
  7.     <optional>true</optional> 
  8. </dependency> 
直接使用Maven获取系统的环境变量
posted @ 2017-12-08 10:57  FL_Pure  阅读(2856)  评论(0编辑  收藏  举报