gpt4 book ai didi

java - Proguard 输出 JAR 文件无法执行

转载 作者:太空宇宙 更新时间:2023-11-04 06:53:20 25 4
gpt4 key购买 nike

我使用 Proguard 来混淆我的 .JAR 文件。混淆后,JAR 文件未执行。在反编译混淆的代码时,我发现我的 main 方法被重命名了。

原始代码:

public static transient void main(String args[])
{
SwingUtilities.invokeLater(new Object() /* anonymous class not found */
class _anm1 {}
);
}

混淆代码:

public static transient void a(String as[])
{
SwingUtilities.invokeLater(new aa());
}

我取消了混淆选项卡中的所有选项,但仍然不走运!有什么帮助吗?

最佳答案

默认情况下,ProGuard 会重命名甚至删除代码中的所有类、字段和方法。您需要保留代码的入口点。对于简单应用程序,入口点是主类及其主方法。在您的 ProGuard 配置中:

-keep public class mypackage.MyMain {
public static void main(java.lang.String[]);
}

请参阅 ProGuard 手册 > Introduction

请参阅 ProGuard 手册 > 示例 > A typical application

关于java - Proguard 输出 JAR 文件无法执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23058058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com