顯示具有 Java 標籤的文章。 顯示所有文章
顯示具有 Java 標籤的文章。 顯示所有文章

2011年4月13日 星期三

於ubuntu 10.04下安裝java jdk 1.5

因為Android source 必須使用java5才可以編譯,但是Unbuntu10.04 已經沒有再提供java5的版本

所以才會有此文教學如何在Unbuntu 10.04下安裝java5版本,並且將java版本降至java5才能編譯Android source

方法如下:

1、在/etc/apt/sources.list中加入java5 deb連結

sudo gedit /etc/apt/sources.list

於此檔案最後面加上如下文字:

deb http://us.archive.ubuntu.com/ubuntu/ jaunty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse

2、更新apt-get連結

sudo apt-get update

3、安裝java5 jdk

sudo apt-get install sun-java5-jdk

4、將java版本降為java5

sudo update-java-alternatives -s java-1.5.0-sun

若想改為其他java版本可以使用

sudo update-java-alternatives -l

來查看所有安裝java的版本

ex:

java-1.5.0-sun 53 /usr/lib/jvm/java-1.5.0-sun
java-6-openjdk 1061 /usr/lib/jvm/java-6-openjdk

5、檢查java版本

java -version

如果出現

java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02)
Java HotSpot(TM) Server VM (build 1.5.0_19-b02, mixed mode)
就代表成功了!

6、設定環境變數

在bashrc檔案中加入安裝的java路徑

sudo gedit ~/.bashrc (bashrc)

export JAVAHOME=/usr/lib/jvm/java-1.5.0-sun(jdk安裝路徑)
export PATH=$PATH:$JAVAHOME/bin:$JAVAHOME/jre/bin:$JAVAHOME/bin/lib
export CLASSPATH=.:$JAVAHOME/jre/bin:$JAVA_HOME/lib

2010年9月1日 星期三

Java NIO DatagramChannel

Steps of using DatagramChannel

1.initializing DatagramChannel and bind it to specific port number, and connect it to the destination so that we can perform read and write later through this channel

DatagramChannel channel = DatagramChannel.open();
channel.socket().bind(new InetSocketAddress(9999));
channel.connect(new InetSocketAddress("wallyjue.blogspot", 80));


2. prepare the buffering space for receiving data, note that if the received packet contains more data than the Buffer can contain, the remaining data is discarded silently.
ByteBuffer buf = ByteBuffer.allocate(48);
buf.clear();

channel.receive(buf);


reference:
1. http://tutorials.jenkov.com/java-nio/index.html
2. http://onjava.com/pub/a/onjava/2002/09/04/nio.html
3. http://openjdk.java.net/projects/nio/javadoc/java/nio/channels/DatagramChannel.html