救救我吧,java怎么建包那么难?(50分)

D

del_man

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高人,小弟现在公司正在上java的项目,只好临时磨枪了,现在遇到这样的一个问题
我的classpath为:C:/jdk/jre/lib/rt.jar;c:/jdk/lib/dt.jar;c:/jdk/lib/tools.jar;e:/test
我在e:/test目录下建立了一个pack.java文件
package test;
public class pack{
private String s;
public pack(String s)
{
this.s=s;
}
public void show()
{
System.out.println(s);
}
public static void main(String args[])
{
}
}
然后我又在e:/test2 下面建立另外一个usepack.java
import test.*;
class usepack
{
public static void main(String args[])
{
}
}
但它老给我报错:
usepack.java:1: package testdo
es not exist
import test.*;
^
1 error
大家救救我吧,我该怎么办?
 
在CLASSPATH加上C:/试试
 
to:dedman
老兄,还是不行啊。somebody help me!!
 
应把classpath 设为 "e:/test"
 
请问del_man,你现在调通了吗
我也遇到你这种问题,可以帮忙吗
我的classpath=.;d:/;d:/jdk1.4/lib/dt.jar;d:/jdk1.4/lib/tools.jar;
原程序:
package com.peter;
public class List{
........
用javac -d d: List.java
编译好的class文件会在d:/com/peter下
import com.peter.*;
public class LibTest{
.......
用javac -classpath d:/com/peter LibTest.java
出现和你一样的错误,你知道是怎么回事吗
 
to:
pansj1229,我现在还是对建包不了解,我想反正是初学者也不是一定要建包的。先把基础
打好了,再研究这些鸡鸡歪歪的问题,这样效率会高一点。
 
你用的是什么编辑器,是不是JCreator啊,是因为里面没有设置的原因。
你在命令行下编译试一试!
 
<转贴>
给自己的类打包:
在打包之前我们最好先定义一下classpath这个环境变量,定义好这个对于以后的操作会十分的简单.
定义classpath环境变量的具体操作如下:
********************************************************************
举例说明:
在我机子上,我的jdk安装在D盘,我在E盘建立了一个JavaPackage的文件目录,我的classpath就这样
设置了(系统为windows2000)
-------------------------------------------------------------------------
|变 量| 值
-------------------------------------------------------------------------
|CLASSPATH| .;D:/jdk/lib;E:/JavaPackage
-------------------------------------------------------------------------
如果我用的是Linux系统(假设用root登陆),我的JDK安装在/usr的目录下,我又在/usr的目录下建立了一个文件
夹叫JavaPackage,那么你应该在 /.bash_profile里这样设置
--------------------------------------------------------------------------------
export JAVA_HOME=/urs/jdk
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools/jar:/usr/JavaPackage
--------------------------------------------------------------------------------
好了,具体怎样设置我已经说的很详细了,PATH环境变量我想大家都会设置了吧~这里就不细说了,下面继续说我
们的包应该怎么打起来.
********************************************************************
我们的程序如下,三个程序都写在E:/下:
+++++++++++++++++ Shape.java +++++++++++++++++++++
package Shapes;
public abstract class Shape
{
}
++++++++++++++++ Square.java +++++++++++++++++++++
package Shapes;
public class Square extends Shape
{
}

程序只写了框架,这也是为了节省大家读文章的时间,感兴趣的可以自行加上代码实验一下.
我们进行编译:
****************************************
javac -d "E:/JavaPackage" Shape.java
****************************************
这句的'-d'是为了说明编译出的Shape.class文件放在哪个目录下,'-d'后面的参数是说明的根目录是什么.编译
好了之后,我们进入E:/JavaPackage的目录看一下,会发现出现了一个新的文件夹Shapes.你会大喊,这不是我定
义的包嘛~~对啊,Shapes文件夹里还有一个Shape.class的文件呢~~到现在我想你会使用package来打包了~我们
有始有终把Square.java 也编译了吧,如下:
****************************************
javac -d "E:/JavaPackage" Square.java
****************************************
一切OK了
3, 使用包:
++++++++++++++++ Draw.java ++++++++++++++++++++++++
import Shapes.*;
public class Draw
{
public static void main(String[] args)
{
}
}
关键在于编译,编译过程如下:
javac -classpath "E:/JavaPackage" Draw.java
这样在Draw中就可以使用Shapes包中给的类了
 
接受答案了
 

Similar threads

L
回复
10
查看
203
lnboy
L
回复
8
查看
201
小猪
W
回复
5
查看
195
wait_for_love
W
顶部