1

我正在尝试在 linux(Lubuntu)上的 eclipse 上添加 jsr80 和 maven。

我的 pom.xml 是

<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">
<modelVersion>4.0.0</modelVersion>
  <groupId>Source.Web.java</groupId>
  <artifactId>EjemploMaven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>EjemploMaven</name>
 <dependencies>
<dependency>
       <groupId>jsr80</groupId>
        <artifactId>jsr80</artifactId>
        <version>1.0</version>
        <scope>system</scope>
        <systemPath>${basedir}/lib/jsr80.jar</systemPath>
    </dependency>
   <dependency>
     <groupId>jsr80_ri</groupId>
     <artifactId>jsr80_ri</artifactId>
     <version>1.0</version>
     <scope>system</scope>
     <systemPath>${basedir}/lib/jsr80_ri.jar</systemPath>
   </dependency>
   <dependency>
      <groupId>jsr80_environment</groupId>
      <artifactId>jsr80_environment</artifactId>
      <version>1.0.1</version>
      <scope>system</scope>
      <systemPath>${basedir}/lib/${jsr80.env}</systemPath>
      </dependency>  
   <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.16</version>
      <scope>compile</scope>
      </dependency>
   </dependencies>

我试过 mvn clean, mvn update dependeces ... Log4j 很好

错误信息是

Missing artifact jsr80:jsr80:jar:1.0:system
Missing artifact jsr80_ri:jsr80_ri:jar:1.0:system
Missing artifact jsr80_environment:jsr80_environment:jar:1.0.1:system

谢谢

4

1 回答 1

0

该问题可能是由systemPath标签内的不同插值规则引起的。

无论如何,最好先将您的工件作为正常依赖项安装到存储库:

然后将您的依赖项更改为默认(编译)范围:

<dependencies>
  <dependency>
    <groupId>jsr80</groupId>
    <artifactId>jsr80</artifactId>
    <version>1.0</version>
  </dependency>
  <dependency>
    <groupId>jsr80_ri</groupId>
    <artifactId>jsr80_ri</artifactId>
    <version>1.0</version>
  </dependency>
  <dependency>
    <groupId>jsr80_environment</groupId>
    <artifactId>jsr80_environment</artifactId>
    <version>1.0.1</version>
  </dependency>
  ...
</dependencies>

这种方法的效果是您需要使用存储库与他人共享它。另一方面,它允许您避免使用由于多种原因而有害的代码提交二进制文件。

于 2012-11-23T22:22:46.663 回答