命令提示符中的Java编译错误:类文件的版本52.0错误,应为50.0
我创建了一个java库程序,并将其作为.jar文件在另一个java程序中使用。我的IDE是NetBeans。我通过命令行尝试了相同的概念,但出现了以下错误: 类文件有错误的版本52.0,应为50.0请删除或 确保它出现在类路径的正确子目录中。 导入Demo1_Lib.Test1; ^ 这是我的步骤 步骤1:在NetBeans IDE中创建了以下类库命令提示符中的Java编译错误:类文件的版本52.0错误,应为50.0,java,compilation,version,Java,Compilation,Version,我创建了一个java库程序,并将其作为.jar文件在另一个java程序中使用。我的IDE是NetBeans。我通过命令行尝试了相同的概念,但出现了以下错误: 类文件有错误的版本52.0,应为50.0请删除或 确保它出现在类路径的正确子目录中。 导入Demo1_Lib.Test1; ^ 这是我的步骤 步骤1:在NetBeans IDE中创建了以下类库 package Demo1_Lib; /** * * @author tveluppillai */ public class T
package Demo1_Lib;
/**
*
* @author tveluppillai
*/
public class Test1
{
public void print()
{
System.out.println("hello");
}
}
步骤2:在netbeans上创建java项目并添加jar文件。(Test1.jar)并使用类库函数
package test2;
import Demo1_Lib.Test1;
/**
*
* @author tveluppillai
*/
public class Test2
{
/**
* @param args the command line arguments
*/
public static void main(String args[])
{
Test1 obj = new Test1();
obj.print();
}
}
这可以很好地编译,当我运行时,它在NetBeans中为我提供了正确的输出
然而,当我使用命令提示符做同样的事情时,我得到了一个错误
我使用以下命令编译并运行它
javac -cp C:\\Demo_Lib\\Test\\Test1.jar Test2.java
我得到了以下错误:
类文件有错误的版本52.0,应为50.0请删除或
确保它出现在类路径的正确子目录中。
导入Demo1_Lib.Test1;
^
我错过了什么 您正试图使用运行时/编译器JRE/JDK 6运行/引用使用JDK 8编译的类 命令行使用的Java可能与NetBeans使用的版本不同 有关这些数字的含义的列表,请参见 下载JDK8,或者如果您已经有了它,将它添加到您的路径中,并将JAVA_设置为HOME 在Unix中:
export JAVA_HOME=directory
export PATH=$PATH:$JAVA_HOME/bin
在我将JDK8更改为我的JAVA_主页之后,我能够按照以下方式编译并运行代码 汇编:
javac-cpc:\\Demo\u Lib\\Test\\Test1.jar Test2.java
运行:
javac-cpc:\\Demo\u Lib\\Test\\Test1.jar;****Test2.java
在我将正确的版本更改为JDK 1.8之后。我收到以下错误:包Demo1_Lib不存在。请参阅。我怎么找到的?在stackoverflow中搜索“java包不存在”…尽管问题被标记为重复,但它并不完全是重复的,因为引用的问题是特定于IDE的,而这更一般。这里接受的答案解释得更好!>>>“尝试运行/引用使用运行时/编译器JRE/JDK1.6使用JDK 8编译的类”我能够编译代码。好的-但这确实是一个重复的问题。如果你把错误信息粘贴到谷歌上,你会得到答案-。你如何设置JAVA_主页?并将其添加到路径中?