如何使用Gradle,JUNG和Error Prone修复此Xlint:path错误?

时间:2016-10-14 18:45:27

标签: java gradle jung errorprone

我很难让JUNG和Error Prone在我的基于Gradle的Java项目中很好地协同工作,我想知道是否有人之前遇到过这样的问题并且可以帮助我找到解决方案。

我已经在JUNGError Prone的GitHub问题跟踪器上发布了此问题,但似乎没有人知道它的原因是什么,这就是为什么我和#39;我在这里张贴。

  

当我尝试使用以下gradle run

运行build.gradle
plugins {
  id 'application'
  id 'java'
  id 'net.ltgt.errorprone' version '0.0.8'
}

group 'org.jbduncan'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

mainClassName = 'org.jbduncan.helloworld.HelloWorld'

repositories {
  jcenter()
}

dependencies {
  compile 'net.sf.jung:jung-graph-impl:2.1.1'
  errorprone 'com.google.errorprone:error_prone_core:2.0.11'
}

tasks.withType(JavaCompile) {
  options.encoding = 'UTF-8'
  options.compilerArgs = [
    '-Xlint:all',
    '-Werror'
  ]
}
     

和这个班级

package org.jbduncan.helloworld;

public final class HelloWorld {
  public static void main(String[] args) {
    System.out.println("Hello, world!");
  }
}
     

它会发出以下消息。

:compileJava                                                                     
warning: [path] bad path element "C:\Users\Jonathan\.gradle\caches\modules-2\files-2.1\net.sf.jung\jung-graph-impl\2.1.1\8293acb2ab4c00a3939cb99a8751e5d38a4299dc\jung-api-2.1.1.jar": no such file or directory
warning: [path] bad path element "C:\Users\Jonathan\.gradle\caches\modules-2\files-2.1\net.sf.jung\jung-graph-impl\2.1.1\8293acb2ab4c00a3939cb99a8751e5d38a4299dc\guava-19.0.jar": no such file or directory
warning: [path] bad path element "C:\Users\Jonathan\.gradle\caches\modules-2\files-2.1\net.sf.jung\jung-api\2.1.1\e47ee4efdfacce12f0af620747d9d0e44bf2eaa4\guava-19.0.jar": no such file or directory
error: warnings found and -Werror specified
1 error                     
3 warnings
:compileJava FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed with exit code 1; see the compiler error output for details.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 5.488 secs
     

当我调查Gradle缓存的内容时,我可以看到,实际上,上面提到的jar文件根本就不存在。

     

当我查看C:\Users\Jonathan\.gradle\caches\modules-2\files-2.1\net.sf.jung\jung-graph-impl\2.1.1\8293acb2ab4c00a3939cb99a8751e5d38a4299dc\jung-graph-impl-2.1.1.jar时,META-INF/MANIFEST.MF包含此文字。

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven 3.0.5
Built-By: jrtom
Build-Jdk: 1.8.0-google-v7
Class-Path: jung-api-2.1.1.jar guava-19.0.jar
     

我在JUNG版本2.1和2.0中遇到了同样的问题,并且没有其他具有依赖关系的库我似乎遇到了这个问题。

     

然而,当我从build.gradle排除id 'net.ltgt.errorprone' version '0.0.8'行和errorprone 'com.google.errorprone:error_prone_core:2.0.11'后问题就消失了,所以我不清楚这是否是JUNG的问题或是它是gradle-errorprone-plugin或与错误相关的。

我认为值得注意的是,自从我在JUNG问题跟踪器上发布了上述问题后,我将我的项目版本的Error Prone从2.0.11升级到了2.0.13,但不幸的是,没有#39;解决我的问题。

1 个答案:

答案 0 :(得分:0)

this bug fix to JUNG起已解决问题。