java中 我在将一个自定义package包编译好了以后,要怎么样才能将他import (100分)

  • 主题发起人 主题发起人 低调一贱男
  • 开始时间 开始时间

低调一贱男

Unregistered / Unconfirmed
GUEST, unregistred user!
//package的源代码
package c05.dessert;

public class Cookie {
public Cookie() {
System.out.println("Cookie constructor");

}
void bite() { System.out.println("bite");
}
} ///:~
//引用的源代码
import c05.dessert.*;

public class Dinner {
public Dinner() {
System.out.println("Dinner constructor");
}
public static void main(String[] args) {
Cookie x = new Cookie();
//! x.bite();
// Can't access
}
} ///:~

//我已经设置了系统环境变量
classpath=.;%JAVA_HOME%/lib;J:/java source/source/cake;J:/java source/code/c05/dessert;J:/java source/code
其中 J:/java source/code/c05/dessert 下面就包含了Cookie.class文件
但是在编译的时候出错,提示如下:
--------------------Configuration: JDK version 1.3.1 <Default>--------------------
J:/java source/code/c05/Dinner.java:5: package c05.dessertdo
es not exist
import c05.dessert.*;
^
J:/java source/code/c05/Dinner.java:12: cannot resolve symbol
symbol : class Cookie
location: class Dinner
Cookie x = new Cookie();
^
J:/java source/code/c05/Dinner.java:12: cannot resolve symbol
symbol : class Cookie
location: class Dinner
Cookie x = new Cookie();
^
3 errors
Process completed.
 
设置完classpath后系统需要重新启动
重起一下机器试试
 
classpath里面 J:/java source/code/c05/dessert 就不用了
 
也对,楼主编译的时候是不是没加-classpath . ?
 
应该用jar命令将*.class打包成c05.jar,classpath包含c05.jar就可以了。
 
to :csz
重新启动了,没有效果
-classpath 我用jcreator 做开发环境的,没有这个选项,是作什么用的啊
to :kehua
用jar可以,但是我早知道了,我不明白,不包在jar里面为什么不行啊
 
你在dos下试试看行不,javac -classpath . Cookie.java
不是必须要打包的
 
+javac -classpath 后,dos下编译正常,
但运行时,错误如下:
J:/java source/code/c05>java dinner.java
Exception in thread "main" java.lang.NoClassDefFoundError: dinner/java
 
classpath=J:/java source/code/c05
 
java -classpath . Dinner //注意是大写的D
运行java.class文件的时候不需要加后缀名,后缀是.class,不是.java
楼主看看这个就知道了
http://www.delphibbs.com/delphibbs/dispq.asp?lid=654858
 
我 +了.java 还是不行。我将目录+到系统变量的classpath里面去了,
还要用java -classpath 吗
 
我 +了.java 还是不行。我将目录+到系统变量的classpath里面去了,
还要用java -classpath 吗
 
如果系统指定了classpath中包含.class所在路径就不用-classpath了。
另外,我也用jcreator,设定好.class所在路径或指定.jar都应该没有问题。
关键是让java编译和运行时都能识别到所用.class位置既可
 
你们说的都不对,是我自己的系统环境没有设置好
 
后退
顶部