jamvm1.5.4+classpath0.98+ARM920
2013-09-05 10:00
507 查看
jamvm的移植:
1. classpath-0.98的编译
# ./configure CC=arm-linux-gcc --host=arm-linux --build=i686-linux --target=arm-linux --disable-gtk-peer --disable-gconf-peer --disable-plugin --disable-Werror --enable-jni
问题1:
checking if java works... configure: error: The Java compiler javac -Xlint:unchecked,cast,divzero,empty,finally,overrides failed (see config.log, check the CLASSPATH?)
解决方法:
把export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib语句中”=“后面的”.:“去掉
# make
问题2:
Unrecognized option: -o
Could not create the Java virtual machine.
解决问题:
--enable-tools=no
问题3:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
解决问题:
--disable-examples
# sudo make install
2. jamvm-0.94的移植
# ./configure --prefix=/usr/local/jamvm --with-classpath-install-dir=/usr/local/classpath --host=arm-linux
问题1:
configure: error: zlib is missing
解决问题:
很明显是需要支持zlib
下载zlib,解压,进入文件
# ./configure
# make CC=arm-linux-gcc
# sudo cp libz.a /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib
# sudo cp zlib.h zconf.h /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/include/
-------------------------------------------------------------------------------
# make
# sudo make install
3. 关于java se程序在jamvm上的运行:
移植到开发板:
之前在编译classpath和jamvm的时候都有一个这样的选项“--prefix”,这就是编译后结果存放的路径
需在开发板上创建相同的路径,并将classpath和jamvm移植到开发板刚创建的路径处。
提示:
假如没有设置选项“--prefix”,则classpath的默认路径是/usr/local/classpath,那在开发板上也
创建相同的路径放置classpath。通用,jamvm的默认路径是/usr/local/jamvm。
环境的配置:
在/etc/init.d/rcS中添加如下
export PATH=$PATH:/usr/local/jamvm/bin
export LD_LIBRARY_PATH=/usr/local/classpath/lib/classpath
export BOOTCLASSPATH=/usr/local/jamvm/share/jamvm/classes.zip:/usr/local/classp
export BOOTCLASSPATH=$BOOTCLASSPATH:/usr/local/classpath/share/classpath
注意:
1. 在配置环境之前,要先用jamvm -veriosn,显示如下信息:
......
Boot Library Path: /usr/local/classpath/lib/classpath
Boot Class Path: /usr/local/jamvm/share/jamvm/classes.zip:/usr/local/classpath/share/classpath/glibj.zip
LD_LIBRARY_PATH和export BOOTCLASSPATH必须和这儿相同
2. 为什么要添加export BOOTCLASSPATH=$BOOTCLASSPATH:/usr/local/classpath/share/classpath
这是我们放置自己的应用程序的路径。假如你添加了这句话,那你自己编译的程序必须放在/usr这个
目录(包括放在/usr的任一子目录也能运行)才能执行。不然会出现下面这样的错误:
java.lang.ClassNotFoundException: cn/jpush/example/JPushClientExample
at java.lang.VMClass.forName(Native Method)
at java.lang.Class.forName(Class.java:233)
at jamvm.java.lang.JarLauncher.main(JarLauncher.java:46)
运行程序:
1. jamvm [option] class文件
使用于当个文件的执行
2. jamvm -jar xxx.jar
这种方法使用于多class文件,适用于做工程。
建议的eclipse下打jar包。如果出现下面这样的错误,那就是jar没有制作好。
Couldn't find Main-Class attribute in jpush.jar Manifest.
1. classpath-0.98的编译
# ./configure CC=arm-linux-gcc --host=arm-linux --build=i686-linux --target=arm-linux --disable-gtk-peer --disable-gconf-peer --disable-plugin --disable-Werror --enable-jni
问题1:
checking if java works... configure: error: The Java compiler javac -Xlint:unchecked,cast,divzero,empty,finally,overrides failed (see config.log, check the CLASSPATH?)
解决方法:
把export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib语句中”=“后面的”.:“去掉
# make
问题2:
Unrecognized option: -o
Could not create the Java virtual machine.
解决问题:
--enable-tools=no
问题3:
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
解决问题:
--disable-examples
# sudo make install
2. jamvm-0.94的移植
# ./configure --prefix=/usr/local/jamvm --with-classpath-install-dir=/usr/local/classpath --host=arm-linux
问题1:
configure: error: zlib is missing
解决问题:
很明显是需要支持zlib
下载zlib,解压,进入文件
# ./configure
# make CC=arm-linux-gcc
# sudo cp libz.a /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib
# sudo cp zlib.h zconf.h /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/include/
-------------------------------------------------------------------------------
# make
# sudo make install
3. 关于java se程序在jamvm上的运行:
移植到开发板:
之前在编译classpath和jamvm的时候都有一个这样的选项“--prefix”,这就是编译后结果存放的路径
需在开发板上创建相同的路径,并将classpath和jamvm移植到开发板刚创建的路径处。
提示:
假如没有设置选项“--prefix”,则classpath的默认路径是/usr/local/classpath,那在开发板上也
创建相同的路径放置classpath。通用,jamvm的默认路径是/usr/local/jamvm。
环境的配置:
在/etc/init.d/rcS中添加如下
export PATH=$PATH:/usr/local/jamvm/bin
export LD_LIBRARY_PATH=/usr/local/classpath/lib/classpath
export BOOTCLASSPATH=/usr/local/jamvm/share/jamvm/classes.zip:/usr/local/classp
export BOOTCLASSPATH=$BOOTCLASSPATH:/usr/local/classpath/share/classpath
注意:
1. 在配置环境之前,要先用jamvm -veriosn,显示如下信息:
......
Boot Library Path: /usr/local/classpath/lib/classpath
Boot Class Path: /usr/local/jamvm/share/jamvm/classes.zip:/usr/local/classpath/share/classpath/glibj.zip
LD_LIBRARY_PATH和export BOOTCLASSPATH必须和这儿相同
2. 为什么要添加export BOOTCLASSPATH=$BOOTCLASSPATH:/usr/local/classpath/share/classpath
这是我们放置自己的应用程序的路径。假如你添加了这句话,那你自己编译的程序必须放在/usr这个
目录(包括放在/usr的任一子目录也能运行)才能执行。不然会出现下面这样的错误:
java.lang.ClassNotFoundException: cn/jpush/example/JPushClientExample
at java.lang.VMClass.forName(Native Method)
at java.lang.Class.forName(Class.java:233)
at jamvm.java.lang.JarLauncher.main(JarLauncher.java:46)
运行程序:
1. jamvm [option] class文件
使用于当个文件的执行
2. jamvm -jar xxx.jar
这种方法使用于多class文件,适用于做工程。
建议的eclipse下打jar包。如果出现下面这样的错误,那就是jar没有制作好。
Couldn't find Main-Class attribute in jpush.jar Manifest.
相关文章推荐
- Ubuntu12.04下jamvm1.5.4+classpath-0.98成功执行 helloworld.class
- Ubuntu12.04下jamvm1.5.4+classpath-0.98成功运行 helloworld.class
- 如何在arm平台上运行Jetty5(包含移植jamvm + classpath过程)(1)
- 如何在arm平台上运行Jetty5(包含移植jamvm + classpath过程)
- ClassLoader referenced unknown path: /data/app/XXX-1/lib/arm
- 极路由4pro安装java(Jamvm 2.0.0 + gnu classpath 0.9.8)
- How to Set Classpath for Java on Windows and Linux
- 在程序中用new ClassPathXmlApplicationContext()获取Spring的上下文环境注意事项
- eclipse的java classpath variables没有显示
- 命令行查看java classpath设置
- nested exception is java.io.FileNotFoundException: class path resource [applicationContext.xml] cann
- Fragment:java.lang.ClassNotFoundException: android.view.fragment in loader dalvik.system.PathClassLo
- Spring 源码梳理(一) ClassPathXmlApplicationContext
- Weblogic的classpath设置
- Error creating bean with name 'sessionFactory' defined in class path resource
- ClassPathXmlApplicationContext和FileSystemXmlApplicationContext的区别
- 在OkHttp的使用过程中出现下列问题Picasso detected an unsupported OkHttp on the classpath.
- eclipse svn时忽略target .project .classpath等目录文件
- 解决Eclipse下启动tomcat报错:/bin/bootstrap.jar which is referenced by the classpath, does not exist.
- 修改hadoop脚本改变CLASSPATH中jar加载顺序