我在双击时无法启动 jar 文件(并使用 java SE 打开),jar 从命令行启动得很好,我创建的其他 jar 通过双击启动得很好。
我使用 eclipse 导出器导出了 jar 文件,我使用了可运行的 jar 导出并在运行配置下选择了正确的 main() 类
当我使用java -jar myjar.jar它运行jar 时,它按预期运行,没有抛出异常
我在 linux/windows 下都有同样的问题我没有真正看到这一点,因为我使用相同方式创建的其他 jar 文件运行没有任何问题。
只是为了好玩我创建了一个
c程序只包含
int main(void){
system("java -jar myjar.jar");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我双击编译的
c程序时,我的 jar 就打开了!
这是清单
Manifest-Version: 1.0
Class-Path: . libs/commons-compress-1.10.jar libs/zip4j_1.3.2.jar libs/xz.jar libs/commons-io-2.4.jar libs/oat2dex.jar
Main-Class: deodex.Tester
Run Code Online (Sandbox Code Playgroud)
这是main方法:http :
//pastebin.com/M8Fhb4qW
package deodex;
import deodex.tools.Logger;
import deodex.ui.LangFrame;
import deodex.ui.Window;
public class Tester {
public static void main(String args[]) …Run Code Online (Sandbox Code Playgroud) 我知道如果我想为 ARM 设备编译程序,我需要一个在 x86 下运行并为 ARM 编译(交叉编译)的特殊版本的 gcc,有没有办法在 ARM 下为 ARM 进行编译?
我在C中并不是那么先进,但我在一段代码中发现了这一点
ssize_t ret = 0;
ret += sprintf(buf + --ret, "\n");
Run Code Online (Sandbox Code Playgroud)
这是什么意思?在这种情况下
我们真的能做到--ret吗?