混淆 Java 源代码以分发给客户
Obfuscate Java source code to hand out to clients
我想知道是否有办法生成我的 maven 项目的 混淆可构建版本 并将其分发给客户,混淆只是为了保护并使其成为很难偷。
我正在使用 proGuard 来混淆 jar,但这种混淆是在字节码级别,就像在这个线程中回答的那样
如果混淆不可能,我如何分发我的源代码并确保它不会被盗用 (或者只是通过组织不当而使其变得困难),尽管客户应该能够构建和 运行 代码。
编辑:需要执行的操作:
1- 删除源代码中的所有注释。
2- 将所有 class 合并到一个包中。
3- 具有无意义的 class 名称:(例如 A、B、C ..)
4- 删除所有单元测试。
混淆的目的是隐藏源代码,使逆向工程无法进行。而 proGuard 对此非常有效。
您想要的是在将源代码提供给客户时从法律上保护它。最好的办法是与律师交谈,以便在您的客户将收到并签署的给定代码中附上一份法律表格,承认该代码是您的,并且他不能将其重复用于定义的不同目的合同。
我想知道是否有办法生成我的 maven 项目的 混淆可构建版本 并将其分发给客户,混淆只是为了保护并使其成为很难偷。
我正在使用 proGuard 来混淆 jar,但这种混淆是在字节码级别,就像在这个线程中回答的那样
如果混淆不可能,我如何分发我的源代码并确保它不会被盗用 (或者只是通过组织不当而使其变得困难),尽管客户应该能够构建和 运行 代码。
编辑:需要执行的操作:
1- 删除源代码中的所有注释。
2- 将所有 class 合并到一个包中。
3- 具有无意义的 class 名称:(例如 A、B、C ..)
4- 删除所有单元测试。
混淆的目的是隐藏源代码,使逆向工程无法进行。而 proGuard 对此非常有效。
您想要的是在将源代码提供给客户时从法律上保护它。最好的办法是与律师交谈,以便在您的客户将收到并签署的给定代码中附上一份法律表格,承认该代码是您的,并且他不能将其重复用于定义的不同目的合同。