【问题标题】:Missing artifact com.sun:tools:jar:1.5.0 maven缺少工件 com.sun:tools:jar:1.5.0 maven
【发布时间】:2013-02-08 12:26:54
【问题描述】:

我在我的 web 项目中使用 maven 这就是我的 pom.xml 的样子 我使用 eclipse juno,使用 apache tomcat 7,我正在运行 windows xp OS,“C:\Program Files\Java\jdk1.6.0_23\lib”是我的工具 jar 所在的位置。我尝试在 pom.xml 中对其进行硬编码,但它正在告诉无法硬编码。使用配置文件尝试以下仍然相同的错误“缺少工件 com.sun:tools:jar:1.5.0”请帮助我受够了 1 周的谷歌搜索

    </dependencies>
<profiles>
    <profile>
      <id>default-tools.jar</id>
      <activation>
        <property>
          <name>java.vendor</name>
          <value>Sun Microsystems Inc.</value>
        </property>
      </activation>
      <dependencies>
        <dependency>
          <groupId>com.sun</groupId>
          <artifactId>tools</artifactId>
          <version>1.5.0</version>
          <scope>system</scope>
          <systemPath>${java.home}/../lib/tools.jar</systemPath>
        </dependency>
      </dependencies>
    </profile>
  </profiles>

</project>


 I:\eclipse-jee-juno-RC3-win32\workspace\MYProject>mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building MYProject 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.594s
[INFO] Finished at: Sat Feb 23 20:49:53 GMT+05:30 2013
[INFO] Final Memory: 3M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project MYProject: Could not resolve dependencies for project MYProject:MYProject:war:0.0.1-SNAPSHOT: Failure to find com.sun:tools:jar:1
.5.0 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
'cmd' is not recognized as an internal or external command,
operable program or batch file.
I:\eclipse-jee-juno-RC3-win32\workspace\MYProject>

【问题讨论】:

  • 您发布的日志似乎与您描述的问题无关。在清理阶段出现错误。文件Company.hbm.xml 可能正在被其他进程使用。
  • @ben75 你说得对,我已经解决了这个问题,现在我遇到了 com.sun:tools:jar 问题你可以检查我是否编辑了我的帖子
  • 您的系统路径看起来很可疑。我认为它的 ${java.home}/lib/tools.jar。顺便提一句。你的 JAVA_HOME 设置正确了吗?
  • 确保您的 ${java.home} 是 C:\Program Files\Java\jdk1.6.0_23\jre。如果您的 java.home 有问题,您可以尝试在 systemPath 元素中硬编码完整路径:C:\Program Files\Java\jdk1.6.0_23\lib\tools.jar
  • 对我有帮助的快速解决方案是将 JRE 指向 JDK 文件夹中可用的那个。

标签: maven artifact


【解决方案1】:

它与 maven 或 pom 无关。您正在尝试从 eclipse 运行 maven,因此您需要确保在 eclipse 中正确配置 JDK。我认为eclipse中提到的JDK版本不是安装的。因此,在 eclipse 中进行更改并将 JRE 系统库指向您安装的 JDK 路径。

【讨论】:

    【解决方案2】:

    当我使用mac编译将使用tools.jar下的一些类的项目时,我遇到了同样的错误,但在linux上,一切正常。所以我显式地添加了 Maven 依赖项,它可以工作。我认为关键是检查 systemPath 是否正确。 ps:我的jdk版本是1.7,

        <dependency>
            <groupId>com.sun</groupId>
            <artifactId>tools</artifactId>
            <version>${java.version}</version>
            <scope>system</scope>
            <systemPath>${java.home}/../lib/tools.jar</systemPath>
        </dependency>
    

    【讨论】:

      【解决方案3】:

      检查您是否安装了 Java JDK 6 而不是 JRE 6。 然后检查您是否在 Eclipse 中正确配置并检查了您的 Java 运行时(首选项 -> Java -> 已安装的 JRE)。

      【讨论】:

        【解决方案4】:

        执行以下操作:

        在您的 pom.xml 中手动添加 tools.jar 依赖项。也可以参考:http://maven.apache.org/general.html#tools-jar-dependency

        <profiles>  
          <profile>  
            <id>default-tools.jar</id>  
            <activation>  
              <property>  
                <name>java.vendor</name>  
                <value>Sun Microsystems Inc.</value>  
              </property>  
            </activation>  
            <dependencies>  
              <dependency>  
                <groupId>com.sun</groupId>  
                <artifactId>tools</artifactId>  
                <version>1.6</version>  
                <scope>system</scope>  
                <systemPath>${java.home}/../lib/tools.jar</systemPath>  
              </dependency>  
            </dependencies>  
          </profile>  
        </profiles> 
        

        应该是你的jdk版本,好像只有1.6。

        【讨论】:

          【解决方案5】:

          我也有类似的问题,并通过以下方式修复了 int。

          在命令提示符下转到 JDK 安装路径的 lib 目录。 执行以下命令安装以安装tools.jar。 $mvn install:install-file -DgroupId=sun.jdk -DartifactId=tools -Dpackaging=jar -Dversion=1.6 -Dfile=tools.jar


          http://parameshk.blogspot.in

          【讨论】:

            【解决方案6】:

            如果您在 Mac OS X 上开发,这是一个已知问题。 根据Mac Developer Library

            tools.jar 不存在。通常位于此处的类被包含在 classes.jar 中。

            这适用于我在 Mac 上:

            <dependency>
                <groupId>com.sun</groupId>
                <artifactId>tools</artifactId>
                <version>${java.version}</version>
                <scope>system</scope>
                <systemPath>${java.home}/../Classes/classes.jar</systemPath>
            </dependency>
            

            【讨论】:

              【解决方案7】:

              如果在 ma​​c 上出现此问题,请删除依赖项。并尝试。默认情况下,tools.jar 将包含在运行时。您只需为 windows 和 linux 机器添加此依赖项。

                                <dependency>
                                      <groupId>com.sun</groupId>
                                      <artifactId>tools</artifactId>
                                      <version>1.5.0</version>
                                      <scope>system</scope>
                                      <systemPath>${java.home}/lib/tools.jar</systemPath>
                                  </dependency> 
              

              参考:maven reference

              【讨论】:

              • 只删除依赖项恐怕不是一个选项,因为开发人员只是删除这些依赖项会破坏其他开发人员在其他平台上的构建。
              【解决方案8】:

              你可以试试

                  <dependency>
                    <groupId>com.sun</groupId>
                    <artifactId>tools</artifactId>
                    <version>1.5.0</version>
                  </dependency>
              

              或者尝试使用以下信息添加新的依赖项

              组 ID:com.sun

              工件 ID:工具

              版本:1.5.0

              这对我有用。

              【讨论】:

                猜你喜欢
                • 2012-01-12
                • 2012-01-31
                • 2014-01-04
                • 2013-07-12
                • 1970-01-01
                • 2015-05-08
                • 1970-01-01
                • 2014-12-12
                • 2016-09-13
                相关资源
                最近更新 更多