如何混淆外部GWT开发的Java源代码?
大多数混淆都集中在字节码上。我还必须提供源代码,因为外部开发人员将使用GWT编译器来运行它。在发布源代码之前,我需要稍微清理一下:如何混淆外部GWT开发的Java源代码?,java,gwt,obfuscation,Java,Gwt,Obfuscation,大多数混淆都集中在字节码上。我还必须提供源代码,因为外部开发人员将使用GWT编译器来运行它。在发布源代码之前,我需要稍微清理一下: 混淆方法变量名 模糊私有方法参数名称 删除除每个文件顶部的许可证之外的所有非Javadoc注释 删除最终类的私有方法或受保护方法上的所有Javadoc注释 删除某些Javadoc标记,如@author 删除某些其他注释标记,如TODO、FIXME等 删除对私有类的所有@see引用 删除所有空白 除上述注释和所有Javadoc之外,我还可以删除所有注释和Javad
- 混淆方法变量名
- 模糊私有方法参数名称
- 删除除每个文件顶部的许可证之外的所有非Javadoc注释
- 删除最终类的私有方法或受保护方法上的所有Javadoc注释
- 删除某些Javadoc标记,如@author
- 删除某些其他注释标记,如TODO、FIXME等
- 删除对私有类的所有@see引用
- 删除所有空白
注意,这里有许多类似的问题没有回答。其中一个:今天似乎没有任何可用的:
最后,我自己编写了一段简单的代码,只删除了所有的空白,但保留了JSNI代码。它不会混淆方法变量或其他任何东西,但现在必须这样做。我对这个字段不太了解,所以我无法提供真实的答案。但是,如果您只是提供了一个库或其他东西,为什么不能呢您自己将GWT编译成JavaScript,然后混淆/最小化该JavaScript并分发它?有没有办法为GWT开发的Java端提供
.class
文件,并让您的用户告诉GWT编译器忽略这些类,并假设它们将在JavaScript端外部提供?GWT编译器使用这两种方法*.java和*.class生成JavaScript。一旦完成,就完成了。我无法将单独构建的JavaScript位链接在一起(这实际上是我所需要的),所以我不得不这样做。