-
Notifications
You must be signed in to change notification settings - Fork 427
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
NoClassDefFoundError when using a dependency with package private abstract class #373
Comments
Hello @dannygonzalez I can observe the crash in the project you linked. However changing the version from proguard 7.4 to 7.3.2 in |
Hi @rubenpieters We discovered this issue when we updated from Java 17 to Java 21 which made us update the following sections also. Here are what they were before the update to Java21: <jdk.version>17.0.7</jdk.version> and the proguard-core version was 9.0.8 I have attached a project that doesn't exhibit the issue with the above versions updated. |
Thanks for explaining it further. I can indeed confirm it is a regression in proguard-core 9.0.9 compared to 9.0.8 . We have scheduled to look at this internally to see what is the cause of the regression. |
Hi @dannygonzalez , |
Hi @robinlefever |
There is an issue with the latest proguard 7.4.0 which we didn't have when using 7.3.2
I have recreated the issue in the attached project. The project has a dependency on a lib module.
the lib module has the following class hierarchy:
AbstractFoo is package private within the lib module.
The main application references only ConcreteFoo1, ConcreteFoo2 and FooInterface. It has no reference to AbstractFoo. However when I build this project I will get the following error:
java.lang.NoClassDefFoundError: com/screamingfrog/utils/foo/AbstractFoo
If I make AbstractFoo public then this error goes away.
Looks like the updated proguard has an issue with this package private class. It looks like it is still somehow referencing the unobfuscated version when it shouldn't be.
To recreate this issue:
Update the path to the Java 21 JDK in
jdk.home
for each pom.xmlThen run:
proguard_issue.zip
The text was updated successfully, but these errors were encountered: