For some reason I keep running into an issue, no matter what configuration I try and I have followed a few tutorials, I always get this error. “Please correct the above warnings first”. Followed by no warnings above. I am using jdk15 and i think this could be part of the issue as the dependency that is autofilled does not exist in jdk15 and only older versions. What am I supposed to do?
Hi @0xDema !
If you add -verbose
in your ProGuard config and use --info
on the Gradle command line, you should see the warnings. If this doesn’t help can you share the command, your config and which version of ProGuard you’re using?
Thanks
I’m using the up to date proguard version on github and I’m using the gui so I’m not sure where I’d enable verbose. How to obfuscate a jar File with Proguard - YouTube what I’ve been following the steps of, I’m using ant for my buildscript which is why I’m trying to obfuscate afterwards.
Can you start the GUI from the command line? Then you should see the warnings in the console. There are scripts in the bin
directory, or you can use the java command: java- jar lib/proguardgui.jar
Note that the GUI is not well-maintained (it may be missing new configuration options, for example) and it’s better to run ProGuard using the command line as described in the manual: https://www.guardsquare.com/manual/setup/standalone
So the errors I seem to get are similar to this.
“Note: the configuration refers to the unknown class ‘java.lang.String’
Note: the configuration refers to the unknown class ‘java.lang.String’
Note: the configuration refers to the unknown class ‘java.sql.Driver’
Note: the configuration refers to the unknown class ‘javax.swing.plaf.ComponentUI’
Note: the configuration refers to the unknown class ‘javax.swing.plaf.ComponentUI’
Note: the configuration refers to the unknown class ‘javax.swing.JComponent’”
They are all basic java
@0xDema it looks like you are referring to some notes instead of errors. The ProGuard manual consists of the following information:
Note: the configuration refers to the unknown class ‘…’
Your configuration refers to the name of a class that is not present in the program jars or library jars. You should check whether the name is correct. Notably, you should make sure that you always specify fully-qualified names, not forgetting the package names.
You can read more about these types of notes and warnings on the following manual page: https://www.guardsquare.com/manual/troubleshooting/troubleshooting
Kind regards,
Ewout