How to save class file "package-info.class" generated by JAXB during obfuscation proguard step

I have a problem, I have JAXB generated java files, between which there is the famous "package-info.java", which contains only 2 lines of code, annotation and package definition:

@javax.xml.bind.annotation.XmlSchema(namespace = "http://it.tms.project/input")
package it.tms.project.jaxb.input;

now that the compiled this file creates a normal .class file, but when I try to confuse it, proguard does not add it to obfuscated output.jar, I suppose because it does not contain any class or something else and there is no other java file referenced on him. I tried some proguard options to get rid of the problem, but none of them were good:

-keepparameternames
-keepattributes Exceptions,InnerClasses,Signature,SourceFile,EnclosingMethod
-keeppackagenames it.tms.project.jaxb.input
-dontshrink
-dontoptimize

-keepattributes *Annotation* (I thought this one would work but I was wrong)

-keepclassmembernames class * {
    java.lang.Class class$(java.lang.String);
    java.lang.Class class$(java.lang.String, boolean);
}

proguard, , , output.jar, , ? , , "keep class * {}", , . , , , FORZA NAPOLI!

+5
1

ProGuard, , . ProGuard , ( ). :

-keep class it.tms.project.jaxb.input.package-info

, , , :

-keepattributes *Annotation*
+4

All Articles