如何在 Proguard 输出中设置目录权限?
How do I set directory permission in Proguard output?
Proguard 做了一些奇怪的事情。作为输出,我有两个罐子,一个由 Proguard 保护,第二个不保护。
我设置 Proguard 什么都不做,只创建 "guarded" jar。 (因为问题和测试)
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>${plugin.proguard.version}</version>
<executions>
<execution>
<id>obfuscation-packaging</id>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
<configuration>
<proguardVersion>${tool.proguard.version}</proguardVersion>
<includeDependency>false</includeDependency>
<obfuscate>false</obfuscate>
<injar>${project.build.finalName}.${project.packaging}</injar>
<outjar>${project.build.finalName}-proguard.${project.packaging}</outjar>
<proguardInclude>${basedir}/proguard.conf</proguardInclude>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>net.sf.proguard</groupId>
<artifactId>proguard-base</artifactId>
<version>${tool.proguard.version}</version>
</dependency>
</dependencies>
</plugin>
配置文件:
-libraryjars <java.home>/jmods/java.base.jmod
-dontnote
-dontwarn
-keepparameternames
-dontoptimize
-dontobfuscate
-dontpreverify
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
-keep class org.** { *; }
-keep public class * {
<methods>;
}
未触及 proguard jar 具有以下访问权限列表。
如你所见D drwxr-xr-x
但是Proguard创建的jar几乎什么都没有
有什么问题吗?如何解决这个问题?
环境
- Proguard 版本 6.1.0beta1
- Maven 插件 2.0.14
- Java: 10
- OS Windows 10
只需添加
-keepdirectories
避免删除元数据。
Proguard 做了一些奇怪的事情。作为输出,我有两个罐子,一个由 Proguard 保护,第二个不保护。
我设置 Proguard 什么都不做,只创建 "guarded" jar。 (因为问题和测试)
<plugin>
<groupId>com.github.wvengen</groupId>
<artifactId>proguard-maven-plugin</artifactId>
<version>${plugin.proguard.version}</version>
<executions>
<execution>
<id>obfuscation-packaging</id>
<phase>package</phase>
<goals>
<goal>proguard</goal>
</goals>
<configuration>
<proguardVersion>${tool.proguard.version}</proguardVersion>
<includeDependency>false</includeDependency>
<obfuscate>false</obfuscate>
<injar>${project.build.finalName}.${project.packaging}</injar>
<outjar>${project.build.finalName}-proguard.${project.packaging}</outjar>
<proguardInclude>${basedir}/proguard.conf</proguardInclude>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>net.sf.proguard</groupId>
<artifactId>proguard-base</artifactId>
<version>${tool.proguard.version}</version>
</dependency>
</dependencies>
</plugin>
配置文件:
-libraryjars <java.home>/jmods/java.base.jmod
-dontnote
-dontwarn
-keepparameternames
-dontoptimize
-dontobfuscate
-dontpreverify
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
-keep class org.** { *; }
-keep public class * {
<methods>;
}
未触及 proguard jar 具有以下访问权限列表。
如你所见D drwxr-xr-x
但是Proguard创建的jar几乎什么都没有
有什么问题吗?如何解决这个问题?
环境
- Proguard 版本 6.1.0beta1
- Maven 插件 2.0.14
- Java: 10
- OS Windows 10
只需添加
-keepdirectories
避免删除元数据。