java的魔术有什么用_Java不兼容魔术值4022320623

我在服务器上编译我的代码并下载并尝试在我的计算机上运行它时遇到了一个奇怪的错误.

我基本上是在EC2实例上编译一些Java文件,然后将它们加载到存储中供以后使用.

当我将文件下载到计算机上并尝试运行它们时,出现以下错误:

Exception in thread "main" java.lang.ClassFormatError: Incompatible magic value

4022320623 in class file HelloWorldPackage/HelloWorldClass

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(ClassLoader.java:787)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:447)

at java.net.URLClassLoader.access$100(URLClassLoader.java:71)

at java.net.URLClassLoader$1.run(URLClassLoader.java:361)

at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

at java.lang.ClassLoader.loadClass(ClassLoader.java:423)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

at java.lang.ClassLoader.loadClass(ClassLoader.java:356)

at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:476)

我正在使用以下方法编译文件:

public void compileProject()

{

String command = "javac ";

for(String s: this.getPackages())

{

File[] files = new File("/home/benuni/CompileFiles/" + project + "/src/" + s).listFiles(new FilenameFilter() {

public boolean accept(File dir, String name) {

return name.endsWith(".java");

}

});

for(File f: files)

{

command = command + f.getAbsolutePath() + " ";

}

}

try {

System.out.println("command: '"+ command +"'");

Process pro = Runtime.getRuntime().exec(command);

printLines(" stderr:", pro.getErrorStream());

pro.waitFor();

this.moveClassFiles();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

并使用此方法上传文件:

public void uploadBin()

{

for(String s: this.getPackages())

{

File[] filesInPackage = new File("/home/benuni/CompileFiles/"+this.project+"/bin/"+s).listFiles();

for(File f: filesInPackage)

{

String key = this.project+"/"+this.version+"/bin/"+s+"/"+f.getName();

s3.putObject("devcloud",key,f);

}

}

}

有人知道我在做什么错吗?

当我在计算机上编译这些类文件时,这些类文件是可运行的,但是当我将它们上传到云中并下载它们时,会出现错误?

谢谢,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值