0条评论
$ cd /usr
$ gunzip *.gz
$ tar -xvf *.tar
List of unpacked files ...
/etc/profile
的末尾添加
export EJDK_HOME=/usr/ejdk1.8.0_151
export PATH=$EJDK_HOME/bin:$PATH
$ cd $EJDK_HOME
$ bin/jrecreate.sh --help
Usage: jrecreate --help
Summary of jrecreate syntax ...
public class HelloWorld {
public static void main (String args[]) {
System.out.println("Hello world!");
}
}
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
public class HelloRMI {
public static void main (String args[]) {
if (System.getSecurityManager() == null) {
System.setSecurityManager(new SecurityManager());
}
try {
Registry registry = LocateRegistry.getRegistry("testRMI");
System.out.println("Hello RMI!");
} catch (Exception e) {
System.err.println("RMI exception:");
e.printStackTrace();
}
}
}
$ javac HelloWorld.java
$ javac HelloRMI.java
$ jdeps -P HelloWorld.class
HelloWorld.class -> /usr/java/jre/lib/rt.jar (compact1)
(HelloWorld.class)
-> java.io compact1
-> java.lang compact1
结果显示compact1配置文件是运行Hello World应用所需的最小配置文件。
$ jdeps -P HelloRMI.class
HelloRMI.class -> /usr/java/jre/lib/rt.jar (compact2)
(HelloRMI.class)
-> java.io compact1
-> java.lang compact1
-> java.rmi.registry compact2
结果显示Hello RMI应用中java.rmi.registry类至少需要compact2配置文件。
$ /usr/ejdk1.8.0_151/bin/jrecreate.sh
--profile compact1
--dest /tmp/defaultJRE/
创建的JRE会生成在/tmp/defaultJRE/
目录下
defaultJRE
目录复制至嵌入式设备中的/usr/jvm
目录下
/etc/profile
的末尾添加
export PATH=/usr/jvm/defJRE/bin:$PATH
$ java -version
java version "1.8.0_151"
Java(TM) SE Embedded Runtime Environment (build 1.8.0_151-b12, profile compact1, headless)
Java HotSpot(TM) Embedded Minimal VM (build 25.151-b12, mixed mode)
HelloWorld.class
所在的文件夹执行以下命令
$ jar -cvf ../hello.jar *
已添加清单
正在添加: HelloWorld.class(输入 = 426) (输出 = 289)(压缩了 32%)
hello.jar
复制至嵌入式设备中,执行以下命令
$ java -cp hello.jar HelloWorld
Hello world!