当前位置: 代码迷 >> J2SE >> Linux下执行java的有关问题
  详细解决方案

Linux下执行java的有关问题

热度:161   发布时间:2016-04-24 12:11:23.0
Linux下执行java的问题
首先安装JDK,配置环境变量:
export JAVA_HOME=/home/ap/plss/sup2/java6
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/*.jar

在某个目录下编辑Test.java
Java code
package cn.ccb.plss.documentservice.util;public class Test {     public static void main(String args[]) {         System.out.println("A new jdk test !");     } }


执行 javac Test.java 当前目录下产生Test.class文件
但执行 java cn.ccb.plss.documentservice.util.Test 时报错:

Exception in thread "main" java.lang.NoClassDefFoundError: cn/ccb/plss/documentservice/util/Test

另外,当Test.java中去掉包名cn.ccb.plss.documentservice.util后,可以正确执行

请问各位,怎么回事呢?如果必须要包名,我们怎么执行java程序?






------解决方案--------------------
[~]/cn/ccb/plss/documentservice/util: javac Test.java
编译完成后转入[~]目录运行:java cn.ccb.plss.documentservice.util.Test

当没有包名的时候,在默认包中,所以你直接在当前的目录就能找到Test。而加上包名之后你要在包名的父目录运行java才行。
------解决方案--------------------
Java code
mkdir classesjavac -d classes Test.javajava -classpath classes cn.ccb.plss.documentservice.util.Test
  相关解决方案