BartonZhang 发表于 2003-8-18 10:41:44

设置JDK教程.

下面以j2sdk1.4.2为例。
安装:
下载j2sdk1.4.2xxxx.sh
#chmod 711 j2sdk1.4.2xxxx.sh
#./j2sdk1.4.2xxxx.sh
安装完成了
默认是安装到/opt/j2sdk_nb这个文件夹
如果你安装了javabeanIDE,那么这个文件夹里还有一个netbeans的文件夹。
/opt/j2sdj_nb/j2sdk1.4.2就是你的java主目录

在终端里试试javac和java这个命令,默认应该可以使用了的。

下面讲一讲如何设置环境变量,在编程时可以引入各种JAVA的默认包。

打开/etc/profile文件
加入一下文字:
export CLASSPATH=.
export CLASSPATH=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/dt.jar

下面解释一下:
第一行的“." 的意思是本目录。
就是说如果有继承之类的,要找另外一个class,就先在编译的这个目录找。
第二行的"/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/dt.jar"
就是告诉系统,再到这个文件里面找你要的东西

就是这样了,可以依此类推

还有一点,修改完后用source /etc/profile这个命令更新/etc/profile文件.

update Monday; December 11, 2006 1:08 AM: future questions will not be answered. Sorry. I quited java developing. Thanks for you guys' discussion. Rock yo!

BartonZhang 发表于 2003-8-18 10:55:23


# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

#Barton Addition for java environment
export CLASSPATH=.
export CLASSPATH=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/rt.jar
#Barton Addition for java ends

pathmunge () {
        if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
           if [ "$2" = "after" ] ; then
              PATH=$PATH:$1
       
下面略

狂客 发表于 2003-8-23 23:23:06

就只需要加上这一行?
不是说还有JAVA_HOME, JAVA_LIB吗?

BartonZhang 发表于 2003-8-24 11:22:31

可以就是了啦
你试试看啊

狂客 发表于 2003-8-24 19:16:33

我把JDK装到自己的Home目录下,可以吗?

BartonZhang 发表于 2003-8-25 12:25:54

可以的
不过这里要改成

export CLASSPATH=/opt/j2sdk_nb/j2sdk1.4.2/jre/lib/rt.jar


export CLASSPATH=/home/xxx/j2******

要和你的目录对应

goldedge 发表于 2003-8-25 21:24:44

jbulider 可以直接安在linux下吗???

狂客 发表于 2003-8-26 00:45:01

谢谢BartonZhang!

BartonZhang 发表于 2003-8-26 09:36:29

没什么,Linuxer都是一家人.

问题是我在处理建构式的时候,编译器还是没有到当前目录找文件,好像这个. 没用一样.不理解.
有些程序还是要指定路径的.就是在CLASSPATH里面单独加入你想编译的文件夹的地址.
麻烦了一点,不过可以用就OK了

RageFan 发表于 2003-9-11 16:39:50

我是linux的新用户 :oops: 装好了JDK1。4。2,都是默认的安装,也修改了profile,现在在rxvt里面运行java和javac都显示bash:java:command not found。很想快点能用上jdk,以后就都不用windows环境开发了 :lol:

BartonZhang 发表于 2003-9-13 20:24:16

创建JAVAC 和 JAVA的联接到/USR/BIN

peier_e 发表于 2003-9-16 18:48:57

用gcc能编java么???

moonriver2001 发表于 2003-9-21 17:38:36

BartonZhang
我按照你的方法设置好/etc/profile文件后编译
public classhello{
    public static void main(String args[]){
      System.out.println("hello");
    }
}
可以运行
但是编译
import javax.swing.JOptionPane;
public class Welcome{
    public static void main(String args[]){
      JOptionPane.showMessageDialog(null, "Welcome\nto\njagva\nprogramming!");
    System.exit(0);
    }
}
则出现
# javac Welcome.java
# java Welcome
Exception in thread "main" java.lang.VerifyError: verification failed at PC 123
in javax.swing.JComponent:getListeners((Ljava.lang.Class;)[Ljava.util.EventListener;): incompatible return type
   at 0x40268e17: java.lang.Throwable.Throwable(java.lang.String) (/usr/lib/./libgcj.so.3)
   at 0x4025bc8e: java.lang.Error.Error(java.lang.String) (/usr/lib/./libgcj.so.3)
   at 0x4025d6b6: java.lang.LinkageError.LinkageError(java.lang.String) (/usr/lib/./libgcj.so.3)
   at 0x402691b6: java.lang.VerifyError.VerifyError(java.lang.String) (/usr/lib/./libgcj.so.3)
   at 0x4023f5a9: _Jv_BytecodeVerifier.verify_fail(byte, int) (/usr/lib/./libgcj.so.3)
   at 0x40232c51: _Jv_BytecodeVerifier.verify_instructions_0() (/usr/lib/./libgcj.so.3)
   at 0x40231857: _Jv_VerifyMethod(_Jv_InterpMethod) (/usr/lib/./libgcj.so.3)
   at 0x40229ae4: _Jv_PrepareClass(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x40248028: java.lang.ClassLoader.linkClass0(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x4025acb3: java.lang.ClassLoader.resolveClass0(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x402299cb: _Jv_PrepareClass(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x40248028: java.lang.ClassLoader.linkClass0(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x4025acb3: java.lang.ClassLoader.resolveClass0(java.lang.Class) (/usr/lib/./libgcj.so.3)
   at 0x4024646c: java.lang.Class.initializeClass() (/usr/lib/./libgcj.so.3)
   at 0x402296af: _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib/./libgcj.so.3)
   at 0x40230827: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3)
   at 0x40230ff4: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw, _Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3)
   at 0x4022e504: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw, void) (/usr/lib/./libgcj.so.3)
   at 0x4038305c: ?? (??:0)
   at 0x40242dd8: gnu.gcj.runtime.FirstThread.call_main() (/usr/lib/./libgcj.so.3)
   at 0x402ad02d: gnu.gcj.runtime.FirstThread.run() (/usr/lib/./libgcj.so.3)
   at 0x4024fc4c: _Jv_ThreadRun(java.lang.Thread) (/usr/lib/./libgcj.so.3)
   at 0x4021c8ac: _Jv_RunMain(java.lang.Class, byte const, int, byte const, boolean) (/usr/lib/./libgcj.so.3)
   at 0x08048910: ?? (??:0)
   at 0x42015574: __libc_start_main (/lib/tls/libc.so.6)
   at 0x080486c1: ?? (??:0)

BartonZhang 发表于 2003-9-22 11:54:50

恩,这个问题我很早的时候出现过,不过很早就解决了。所以现在实在想不起来了。

好象是很简单的。就是编译的时候用 javac --classpath XXX.java这个命令编译。详细的内容看看javac和java命令的帮助(就是直接在终端内输入命令)

这个是我在SUN的JAVA教材里面看来的。你去官方网站找找看,如果找不到,我10。1回家可以一个详细的回答

tffan 发表于 2003-9-22 16:26:46

我设置完profile后,它的MIME类型变成application/octet-stream,怎么回事阿~?
页: [1] 2 3 4 5
查看完整版本: 设置JDK教程.