2014-02-20 2 views
1

내 프로젝트에 .java 및 .scala 소스가 모두 포함되어 있습니다.Java에서만 스칼라를 실행하지만 스칼라는 실행하지 않도록 설정하려면

는 스칼라 자바에서 참조를 허용하기 위해 스칼라 플러그인은 자바와 스칼라 모두 컴파일하도록 구성되어 있습니다 :

sourceSets.main.scala.srcDirs = ["src/main/java", "src/main/scala"] 
sourceSets.main.java.srcDirs = [] 
sourceSets.test.scala.srcDirs = ["src/test/java", "src/test/scala"] 
sourceSets.test.java.srcDirs = [] 

난 단지 자바 파생 클래스를 분석하고 스칼라를 생략 할 수 Findbugs 플러그인을 구성하려면 어떻게 파생 된 것들? 제가 findbugs { sourceSets의 = "SRC/주/자바"] } 시도

(스칼라 소스 findbugs 분석에 많은 위양성 문제를 수득) 그러나 이것은 Findbugs - 플러그인

+2

FindBugs는 클래스 파일을 분석하고, 공동 compilatio 이후 n은 모든 클래스 파일을 같은 디렉토리에 씁니다. 어떤 클래스 파일이 Java이고 Scala가 스칼라인지 알 수있는 방법을 찾아야합니다. Gradle에는이 기능이 포함되어 있지 않지만 Scala 도구/라이브러리가 도움이 될 것입니다. 또는 다른 출력 디렉토리에 클래스 파일을 쓰도록 스칼라 컴파일러를 구성하는 방법이있을 수 있습니다. 그렇다면 Gradle이 그 사실을 인식하도록 만드는 방법을 알아 내야합니다. –

+1

또 다른 해결책은 Java 코드를 두 번째로 컴파일하고 (Java 컴파일러로 작성) 결과 클래스 파일을 FindBugs로 전달하는 것입니다. –

답변

관련 문제