joernio / joern

Open-source code analysis platform for C/C++/Java/Binary/Javascript/Python/Kotlin based on code property graphs. Discord https://discord.gg/vv4MH284Hc
https://joern.io/
Apache License 2.0
1.99k stars 269 forks source link

javasrc2cpg: Compilation failed #1534

Closed h3xstream closed 2 years ago

h3xstream commented 2 years ago

I get [error] (javasrc2cpg / Compile / compileIncremental) Compilation failed when compiling the project.

> sbt -java-home "C:\Program Files\Java\jdk-11.0.15" stage

[info] welcome to sbt 1.6.2 (Oracle Corporation Java 11.0.15)
[info] loading settings for project joern-build from meta-build.sbt,plugins.sbt ...
[info] loading project definition from C:\Code\external\joern\project
[info] loading settings for project root from build.sbt ...
[info] loading settings for project joerncli from build.sbt ...
[info] loading settings for project querydb from build.sbt ...
[info] loading settings for project console from build.sbt ...
[info] loading settings for project dataflowengineoss from build.sbt ...
[info] loading settings for project macros from build.sbt ...
[info] loading settings for project semanticcpg from build.sbt ...
[info] loading settings for project benchmarks from build.sbt ...
[info] loading settings for project c2cpg from build.sbt ...
[info] loading settings for project ghidra2cpg from build.sbt ...
[info] loading settings for project x2cpg from build.sbt ...
[info] loading settings for project pysrc2cpg from build.sbt ...
[info] loading settings for project php2cpg from build.sbt ...
[info] loading settings for project jssrc2cpg from build.sbt ...
[info] loading settings for project javasrc2cpg from build.sbt ...
[info] loading settings for project jimple2cpg from build.sbt ...
[info] loading settings for project kotlin2cpg from build.sbt ...
[info] loading settings for project x2cpg from build.sbt ...
[info] loading settings for project kotlin2cpg from build.sbt ...
[info] loading settings for project javasrc2cpg from build.sbt ...
[info] loading settings for project pysrc2cpg from build.sbt ...
[info] loading settings for project php2cpg from build.sbt ...
[info] loading settings for project jimple2cpg from build.sbt ...
[info] loading settings for project jssrc2cpg from build.sbt ...
[info] resolving key references (20617 settings) ...
[info] set current project to joern (in build file:/C:/****/joern/)
Java Compiler Compiler Version 7.0.10 (Parser Generator)

...

[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:8:26: object cache is not a member of package com.google.common
[error] import com.google.common.cache.CacheBuilder
[error]                          ^
[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:15:27: Class com.google.common.cache.Cache not found - continuing with a stub.
[error]   private val cache = new GuavaCache(
[error]                           ^
[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:16:5: not found: value CacheBuilder
[error]     CacheBuilder.newBuilder().build[String, SymbolReference[ResolvedReferenceTypeDeclaration]]()
[error]     ^
[error] three errors found
[info] Main Scala API documentation successful.
[info] compiling 20 Scala sources to C:\Code\external\joern\joern-cli\frontends\kotlin2cpg\target\scala-2.13\classes ...
[info] Main Scala API documentation successful.
[info] compiling 11 Scala sources to C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\target\scala-2.13\classes ...
[info] compiling 5 Scala sources to C:\Code\external\joern\joern-cli\frontends\jimple2cpg\target\scala-2.13\classes ...
[info] Main Scala API documentation successful.
[warn] You have no main class in your project. No start script will be generated.
[info] compiling 24 Scala sources to C:\Code\external\joern\joern-cli\frontends\ghidra2cpg\target\scala-2.13\classes ...
[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:8:26: object cache is not a member of package com.google.common
[error] import com.google.common.cache.CacheBuilder
[error]                          ^
[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:15:27: Class com.google.common.cache.Cache not found - continuing with a stub.
[error]   private val cache = new GuavaCache(
[error]                           ^
[error] C:\Code\external\joern\joern-cli\frontends\javasrc2cpg\src\main\scala\io\joern\javasrc2cpg\util\CachingReflectionTypeSolver.scala:16:5: not found: value CacheBuilder
[error]     CacheBuilder.newBuilder().build[String, SymbolReference[ResolvedReferenceTypeDeclaration]]()
[error]     ^
[error] three errors found
[warn] You have no main class in your project. No start script will be generated.
[info] Main Scala API documentation successful.
...

[error] Scaladoc generation failed
[error]         at xsbt.Runner.run(ScaladocBridge.scala:50)
[error]         at xsbt.ScaladocBridge.run(ScaladocBridge.scala:21)
[error]         at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:154)
[error]         at sbt.internal.inc.AnalyzingCompiler.doc(AnalyzingCompiler.scala:133)
[error]         at sbt.Doc$.$anonfun$scaladoc$1(Doc.scala:52)
[error]         at sbt.Doc$.$anonfun$scaladoc$1$adapted(Doc.scala:40)
[error]         at sbt.RawCompileLike$.$anonfun$prepare$1(RawCompileLike.scala:79)
[error]         at sbt.RawCompileLike$.$anonfun$prepare$1$adapted(RawCompileLike.scala:72)
[error]         at sbt.RawCompileLike$.$anonfun$cached$4(RawCompileLike.scala:63)
[error]         at sbt.RawCompileLike$.$anonfun$cached$4$adapted(RawCompileLike.scala:61)
[error]         at sbt.util.Tracked$.$anonfun$inputChangedW$1(Tracked.scala:219)
[error]         at sbt.RawCompileLike$.$anonfun$cached$1(RawCompileLike.scala:68)
[error]         at sbt.RawCompileLike$.$anonfun$cached$1$adapted(RawCompileLike.scala:52)
[error]         at sbt.Defaults$.$anonfun$docTaskSettings$4(Defaults.scala:2159)
[error]         at scala.Function1.$anonfun$compose$1(Function1.scala:49)
[error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:62)
[error]         at sbt.std.Transform$$anon$4.work(Transform.scala:68)
[error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:282)
[error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:23)
[error]         at sbt.Execute.work(Execute.scala:291)
[error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:282)
[error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:265)
[error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:64)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
[error]         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[error]         at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[error]         at java.base/java.lang.Thread.run(Thread.java:834)
[error] (javasrc2cpg / Compile / compileIncremental) Compilation failed
[error] (javasrc2cpg / Compile / doc) Scaladoc generation failed
[error] Total time: 192 s (03:12), completed Jun. 28, 2022, 12:35:49 p.m.
mpollmeier commented 2 years ago

Hmm, we run sbt clean test (which also runs compile) on windows for each PR build, e.g. https://github.com/joernio/joern/runs/7090108711?check_suite_focus=true

The workflow config with the exact steps is here: https://github.com/joernio/joern/blob/master/.github/workflows/pr.yml

No idea what's wrong on your system, but it's worth wiping your local caches, e.g. ~/.ivy2 and ~/.m2/repository...

fabsx00 commented 2 years ago

Closing due to inactivity.