首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

新手请问javac编译完后,怎么用java命令运行有包的类

2013-07-01 
新手请教javac编译完后,如何用java命令运行有包的类本人在准备OCJP的过程中,要考DOS下直接编译运行JAVA程

新手请教javac编译完后,如何用java命令运行有包的类
本人在准备OCJP的过程中,要考DOS下直接编译运行JAVA程序...但模拟了一个最简单的,运行时抛异常.

我做法如下,请高手纠错...谢谢!

第1步.写代码:

package com.qp.ocjp;
public class TestJar {
public static void main(String[] args) {
new TestJar();
System.out.println("test Jar");

}

第2步.上述代码存到如下目录下
  C:\Users\jocelynl\Desktop\development\java>


第3步:在上述目录下,手工创建包结构中需要的目录, com\qp\ocjp,用于存放编译后的class文件

第4步: 在TestJar.java所在的目录下,用javac编译代码
    C:\Users\jocelynl\Desktop\development\java>javac TestJar.java
    编译后,检查第3步创建的目录下,生成了编译后的class文件

第5步:java命令运行class文件-----出错了
     C:\Users\jocelynl\Desktop\development\java>java com.ocjp.qp.TestJar

   Error: Could not find or load main class com.ocjp.qp.TestJar javac
[解决办法]
第1步.写代码:
...
第2步.上述代码存到如下目录下:C:\Users\jocelynl\Desktop\development\java>
第3步.在这个目录下编译 javac -d . TestJar.java
第4步.运行 java com.qp.ocjp.TestJar
[解决办法]
javac 的时候带上-d参数就会自动创建包的目录。
[解决办法]

引用:
运行时,写不写包名,都会出错。。

C:\Users\jocelynl\Desktop\development\java>java TestJar
Exception in thread "main" java.lang.NoClassDefFoundError: TestJar (wrong name:
com/qp/ocjp/TestJar)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)


        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

C:\Users\jocelynl\Desktop\development\java>java com.qp.ocjp.TestJar
Error: Could not find or load main class com.qp.ocjp.TestJar



运行java命令时带上classpath, java -cp . com.qp.ocjp.TestJar就可以了
[解决办法]
命令行中编译与运行带有包的java文件
http://afantihust.blog.51cto.com/2231549/684608

热点排行