作者csihcs (非天夜翔)
看板java
标题Re: [问题] classpath
时间Thu Jul 26 16:33:54 2007
1、
C:\MyProject\exe.java 档案开头不能有 package 的宣告
C:\MyProject\package1\含一堆java档 档案开头必须是 package package1;
C:\MyProject\package2\含一堆java档 档案开头必须是 package package2;
Compile : javac -cp C:\MyProject C:\MyProject\exe.java
Run : java -cp C:\MyProject exe
2、
C:\MyProject\packageExe\exe.java 档案开头必须是 package packageExe;
C:\MyProject\package1\含一堆java档 档案开头必须是 package package1;
C:\MyProject\package2\含一堆java档 档案开头必须是 package package2;
Compile : javac -cp C:\MyProject C:\MyProject
\packageExe\exe.java
Run : java -cp C:\MyProject
packageExe.exe
※ 引述《neigence (心夜)》之铭言:
: 最近遇到个奇怪的问题
: 如果我档案是这样放
: MyProject --- exe.java
: --- package1 --- 含一堆java档
: --- package2 --- 含一堆java档
: 这样子的话 我在dos下执行 可以顺利compile 也可以顺利执行
: 可是如果我这样放
: MyProject --- packageExe --- exe.java
: --- package1 --- 含一堆java档
: --- package2 --- 含一堆java档
: 这样子的话 我可以compile 但却没辨法执行 错误讯息如下
: Exception in thread "main" java.lang.NoClassDefFoundError : exe
: 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$000(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 java.lang.ClassLoader.loadClassInternal(Unknown Source)
: 总之 一整个奇怪
: 第一种可以的情况 我输入的指令是
: javac -cp D:\MyProject D:\MyProject\exe.java
: java -cp D:\MyProject exe
: 第二种的话是
: javac -cp D:\MyProject D:\MyProject\exePackage\exe.java
: 这样的情况当然在eclipse下还是可以跑 只是dos下我弄不出来
: 或者请问 怎麽看eclipse帮你呼叫了那些命令
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.29.20