在Amazon ec2上运行jar的问题 [英] Problems in running jar on Amazon ec2

查看:207
本文介绍了在Amazon ec2上运行jar的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个在Eclipse中的java项目。主要课程如下:

  package aws; 

public class Assignment3 {
public static void main(String [] args)throws Exception {}
}

我的清单文件是:

 清单版本:1.0 
类路径:aws.Assignment3

我将scp的可执行jar导出到我的ec2成功。当我尝试运行我的jar时,我得到:

  [ec2-user @ ip-10-138-8-38 project] $ java -jar alertShopper.jar 
线程main中的异常java.lang.UnsupportedClassVersionError:aws / Assignment3:不支持的major.minor版本51.0
在java.lang.ClassLoader.defineClass1(Native Method)
在java.lang.ClassLoader.defineClass(ClassLoader.java:634)
在java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
在java.net.URLClassLoader.defineClass( URLClassLoader.java:277)
在java.net.URLClassLoader.access $ 000(URLClassLoader.java:73)
在java.net.URLClassLoader $ 1.run(URLClassLoader.java:212)
在java.security.AccessController.doPrivileged(本机方法)
在java.net.URLClassLoader.findClass(URLClassLoader.java:205)
在java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:294)
在java.lang.ClassLoader.loadClass(C lassLoader.java:266)
找不到主类:aws.Assignment3。程序将退出。

我做了

 code> [ec2-user @ ip-10-138-8-38项目] $ java -version 
java版本1.6.0_20
OpenJDK运行时环境(IcedTea6 1.9.1) amazon-44.1.9.1.16.amzn1-i386)
OpenJDK客户端虚拟机(构建19.0-b06,混合模式)

我不知道还有什么要做的。任何帮助将不胜感激。
谢谢



我现在有了一个新的ec2 amazon ami,它已经安装了java 1.7。但是我需要在amazon linux ami上安装jre-1.7。

解决方案


不支持major.minor版本51.0


当您用于编译代码的Java版本与运行代码的版本不同时,会出现此问题。编译时更高版本的JDK,运行时版本较低的JDK。



您可能需要如果要运行较低版本,请指定-target


Hi I have a java project in eclipse. The main class as follows:

package aws;

public class Assignment3 {
public static void main(String[] args) throws Exception { }
}

My manifest file is:

Manifest-Version: 1.0
Class-Path: aws.Assignment3

I exported my executable jar with scp to my ec2 successfully. When I try to run my jar I get:

[ec2-user@ip-10-138-8-38 project]$ java -jar alertShopper.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: aws/Assignment3 : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: aws.Assignment3. Program will exit.

I did

[ec2-user@ip-10-138-8-38 project]$ java -version
java version "1.6.0_20"
OpenJDK Runtime Environment (IcedTea6 1.9.1) (amazon-44.1.9.1.16.amzn1-i386)
OpenJDK Client VM (build 19.0-b06, mixed mode)

I don't know what else to do. Any help will be appreciated. Thanks

I now got a new ec2 amazon ami and it has java 1.7 installed. But I need install jre-1.7 on amazon linux ami.

解决方案

Unsupported major.minor version 51.0

This issue happens when java version used to compile your code is different than version you are running your code on. Higher version of JDK during compile time and lower version JDK during runtime.

You may need to specify -target if you want to run lower version

这篇关于在Amazon ec2上运行jar的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆