Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

quick_start.sh fails with "General error during semantic analysis: Unsupported class file major version 60" #84

Closed
PenelopeFudd opened this issue Jun 18, 2021 · 2 comments

Comments

@PenelopeFudd
Copy link

Hi!

Just stumbled across Tsunami for the first time today, tried to install it, and got stumped in the quick_start.sh script:

# tsunami-security-scanner/quick_start.sh 

Fetching source code for Tsunami scanner ...
Cloning into 'tsunami-security-scanner'...
remote: Enumerating objects: 1122, done.
remote: Counting objects: 100% (150/150), done.
remote: Compressing objects: 100% (84/84), done.
remote: Total 1122 (delta 27), reused 101 (delta 16), pack-reused 972
Receiving objects: 100% (1122/1122), 353.45 KiB | 1.44 MiB/s, done.
Resolving deltas: 100% (403/403), done.

Fetching source code for Tsunami scanner plugins ...
Cloning into 'tsunami-security-scanner-plugins'...
remote: Enumerating objects: 2531, done.
remote: Counting objects: 100% (1034/1034), done.
remote: Compressing objects: 100% (373/373), done.
remote: Total 2531 (delta 215), reused 946 (delta 137), pack-reused 1497
Receiving objects: 100% (2531/2531), 7.75 MiB | 3.24 MiB/s, done.
Resolving deltas: 100% (677/677), done.

Building all Google plugins ...

Building detectors/credentials/cve20177615 ...
Downloading https://services.gradle.org/distributions/gradle-6.5-bin.zip
.........10%..........20%..........30%..........40%.........50%..........60%..........70%..........80%.........90%..........100%

Welcome to Gradle 6.5!

Here are the highlights of this release:
 - Experimental file-system watching
 - Improved version ordering
 - New samples

For more details see https://docs.gradle.org/6.5/release-notes.html

Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* Where:
Settings file '/home/user/tsunami/repos/tsunami-security-scanner-plugins/google/detectors/credentials/cve20177615/settings.gradle'

* What went wrong:
Could not compile settings file '/home/user/tsunami/repos/tsunami-security-scanner-plugins/google/detectors/credentials/cve20177615/settings.gradle'.
> startup failed:
  General error during semantic analysis: Unsupported class file major version 60
  
  java.lang.IllegalArgumentException: Unsupported class file major version 60
        at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:196)
   ...multipage stack dump omitted...
        at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:297)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
        at java.base/java.lang.Thread.run(Thread.java:831)
  
  1 error


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

* Get more help at https://help.gradle.org

BUILD FAILED in 31s

I'm on a freshly-installed Fedora34 x86_64 system.

# java -version
openjdk version "16.0.1" 2021-04-20
OpenJDK Runtime Environment 21.3 (build 16.0.1+9)
OpenJDK 64-Bit Server VM 21.3 (build 16.0.1+9, mixed mode, sharing)

It also dies if I run grandlew.
It looks like the problem in gradle/gradle#13629 : Gradle 6 doesn't work with Java 16: the problem is solved by using Gradle 7.

I looked in every file named gradle-wrapper.properties in the main and plugin repositories, and they all say

distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip

I changed every occurrence to gradle-7.1-bin.zip:

find . -name gradle-wrapper.properties | xargs sed -i 's/gradle-6.5-bin.zip/gradle-7.1-bin.zip/'

Now it builds almost everything, except for the main scanner:

Building Tsunami scanner jar file ...

FAILURE: Build failed with an exception.

* Where:
Build file '/home/chowes/tsunami/repos/tsunami-security-scanner/common/build.gradle' line: 4

* What went wrong:
A problem occurred evaluating project ':tsunami-common'.
> Could not find method compile() for arguments [project ':tsunami-proto'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

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

* Get more help at https://help.gradle.org

BUILD FAILED in 3s

How do I get tsunami to run?

Thanks

@PFAhard
Copy link

PFAhard commented Dec 29, 2021

I have the same issue. I fixed this by changing the jdk to 11.

@JoKontage
Copy link

Same - fixed by switching to JDK 11.

# UBUNTU/DEBIAN: Installed openjdk-11-jdk
sudo apt install openjdk-11-jdk

# Make OpenJDK 11 the default JDK
sudo update-alternatives --config java

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants