java开发中遇到的问题及解决方法(持续更新)
2014-08-09 14:39
591 查看
工作中,以C/C++开发为主,难免与其他服务和Web进行交换,Java开发必不可少,又不想动用Eclipse大家伙,只能自己动手编写脚本进行Java代码的编译和运行,期间遇到的一些问题,记录下来供自己和大家参考。
1)软件包不存在/软件包 javax.jms 不存在
这是由于javac编译时找不到javax.jms所在的软件包,因此将javax.jms所在的软件包加入到classpath中即可,
如javac -classpath ./lib/j2ee.jar *.java
2)如何将class文件打包成jar
jar cvmf manifest myjar.jar com
mainfest可以为空,com为要打包的class所在的目录,可以是多层,根据package的打包目录而定
3)JNI开发的class,在java.library.path中找不到dll库
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jwtp_api in java.library.path
则,需要将dll库所在的目录加入到path中即可,如set path=dll所在目录;%path%
-Djava.library.path=dll所在目录,不知道为何不可以
4)JNI调用java类时,报错Exception in thread "main" java.lang.UnsatisfiedLinkError: wtpUpLoad
我的错误是,头文件和c文件中函数名称不符,
Java_com_tongtech_wtp_client_wtpDownLoad
c代码中
Java_com_tongtech_wtp_WtpClient_wtpDownLoad
头文件
当使用 JNI 从 Java 程序访问本机代码时,您会遇到许多问题。您会遇到的三个最常见的错误是:
无法找到动态链接。它所产生的错误消息是:java.lang.UnsatisfiedLinkError。这通常指无法找到共享库,或者无法找到共享库内特定的本机方法。
无法找到共享库文件。当用 System.loadLibrary(String libname) 方法(参数是文件名)装入库文件时,请确保文件名拼写正确以及没有指定扩展名。还有,确保库文件的位置在类路径中,从而确保 JVM 可以访问该库文件。
无法找到具有指定说明的方法。确保您的 C/C++ 函数实现拥有与头文件中的函数说明相同的说明。
(摘自IBM中文网) http://bbs.csdn.net/topics/100065889 hengxxh
5)import org.apache.commons.lang.StringUtils;失败
org.apache.commons.lang.StringUtils;所在的包是commons-lang-x.y.jar,其中x和y分别是主版本、副版本号,需要将合适版本的jar加入到Eclipse工程中。我的jar就是commons-lang-2.4.jar,但导入确是commons-lang-2.1.jar,肯定找不到呀,修改成commons-lang-2.4.jar即可。
1)软件包不存在/软件包 javax.jms 不存在
这是由于javac编译时找不到javax.jms所在的软件包,因此将javax.jms所在的软件包加入到classpath中即可,
如javac -classpath ./lib/j2ee.jar *.java
2)如何将class文件打包成jar
jar cvmf manifest myjar.jar com
mainfest可以为空,com为要打包的class所在的目录,可以是多层,根据package的打包目录而定
3)JNI开发的class,在java.library.path中找不到dll库
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jwtp_api in java.library.path
则,需要将dll库所在的目录加入到path中即可,如set path=dll所在目录;%path%
-Djava.library.path=dll所在目录,不知道为何不可以
4)JNI调用java类时,报错Exception in thread "main" java.lang.UnsatisfiedLinkError: wtpUpLoad
我的错误是,头文件和c文件中函数名称不符,
Java_com_tongtech_wtp_client_wtpDownLoad
c代码中
Java_com_tongtech_wtp_WtpClient_wtpDownLoad
头文件
当使用 JNI 从 Java 程序访问本机代码时,您会遇到许多问题。您会遇到的三个最常见的错误是:
无法找到动态链接。它所产生的错误消息是:java.lang.UnsatisfiedLinkError。这通常指无法找到共享库,或者无法找到共享库内特定的本机方法。
无法找到共享库文件。当用 System.loadLibrary(String libname) 方法(参数是文件名)装入库文件时,请确保文件名拼写正确以及没有指定扩展名。还有,确保库文件的位置在类路径中,从而确保 JVM 可以访问该库文件。
无法找到具有指定说明的方法。确保您的 C/C++ 函数实现拥有与头文件中的函数说明相同的说明。
(摘自IBM中文网) http://bbs.csdn.net/topics/100065889 hengxxh
5)import org.apache.commons.lang.StringUtils;失败
org.apache.commons.lang.StringUtils;所在的包是commons-lang-x.y.jar,其中x和y分别是主版本、副版本号,需要将合适版本的jar加入到Eclipse工程中。我的jar就是commons-lang-2.4.jar,但导入确是commons-lang-2.1.jar,肯定找不到呀,修改成commons-lang-2.4.jar即可。
相关文章推荐
- java开发中遇到的问题及解决方法(持续更新)
- java开发中遇到的问题及解决方法(持续更新)
- java开发中遇到的问题及解决方法(持续更新)
- [原]java开发中遇到的问题及解决方法(持续更新)
- 学习Java Web开发中遇到的问题,及其解决方法
- java/golang开发面试中遇到的问题集锦--持续更新
- 安卓中经常使用控件遇到问题解决方法(持续更新和发现篇幅)(在textview上加一条线、待续)
- 开发Android的时候遇到的问题及解决方法(不断更新)
- 安卓中常用控件遇到问题解决方法(持续更新和发现篇幅)(在textview上加一条线、待续)
- 记flume部署过程中遇到的问题以及解决方法(持续更新)
- 学习计算机与软件遇到的问题及解决方法(持续更新)
- 使用CentOS 遇到的问题以及解决方法(持续更新)
- iOS开发Cocoapods安装过程中遇到问题解决[持续更新]
- 【集群管理】可能遇到的问题及解决方法(持续更新中......)
- java开发过程中遇到的问题(持续更新)
- java web开发中遇到的问题及解决方案(个人学习日志,持续更新)
- Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题解决方法(持续更新)
- android 开发中遇到的错误及解决方式(更新R.java文件不能自动更新问题)
- Caffe搭建:常见问题解决办法和ubuntu使用中遇到问题解决方法(持续更新)
- 使用Ubuntu遇到的问题以及解决方法(持续更新)