- 浏览: 842759 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (530)
- Java编程 (64)
- C/C++/D (6)
- .Net/C# (9)
- Ruby (12)
- JavaScript (77)
- XML (1)
- JSON (1)
- Ajax (17)
- ExtJs (81)
- YUI (1)
- JQuery (7)
- DWR (1)
- HTML (7)
- CSS (7)
- Database (6)
- PowerDesigner (23)
- DB2 (2)
- Oracle (57)
- MS SQL Server (8)
- MySQL (6)
- JSP/Servlet/JSTL/TagLib (3)
- Spring (1)
- Hibernate (0)
- iText (0)
- Struts (0)
- Struts2 (0)
- iReport (0)
- FreeMarker (0)
- HttpClient (1)
- POI (6)
- FckEditor (15)
- Eclipse / MyEclipse (10)
- IntelliJ IDEA (0)
- NetBeans (0)
- Tomcat (11)
- WebLogic (1)
- Jboss (3)
- jetty (4)
- IIS (2)
- CVS/VSS (1)
- FTP (1)
- Windows/DOS (6)
- Linux/Unix (0)
- 软件建模 UML (0)
- Design Pattern & Thinking In Programming (10)
- 数据结构与算法 (12)
- 软件项目管理 (9)
- 行业应用解决方案 (3)
- 电脑软件与故障解决 (13)
- 编程语言 (1)
- 十万个为什么 (3)
- JBPM (2)
- sysbase (2)
- JDBC (8)
- Ant (2)
- Case-计算机辅助软件工程 (1)
- WebService (4)
- 浏览器 (1)
最新评论
-
gaoqiangjava:
同一楼,还请大手帮解决
JAVA读取word文件 -
hyl523:
// 判断数组中的第一个值是否未定义,如果未定义,便定义为空对 ...
javascript面向对象之二 命名空间 -
ping12132200:
ping12132200 写道我抱着个错不是因为:body标签 ...
extjs在IE报对象不支持此属性或方法 -
ping12132200:
我抱着个错不是因为:body标签内的第一个元素不能为文本tex ...
extjs在IE报对象不支持此属性或方法 -
fireinjava:
呀,不错,转走了,谢谢啦~
利用OpenOffice将word转换成PDF
这几天因工作需要, 第一次测试 JNI 程序的撰写.
依范例写的程序, 看来没什么问题, gcc compile/link 也没报错.
可是一跑 Java 程序, 就一直报错:
Exception in thread "main" java.lang.UnsatisfiedLinkError: myPac/MyClass.myfunc(I)V
在 Google 上找到第1篇文章:
Java Native Interface (JNI) - JNI with GCC
http://forum.java.sun.com/thread.jspa?threadID=470937&messageID=2414695
依照里面的说明, 从头到尾检查了 .java .h .c 等程序, 并没发现自己有做错什么步骤,
但 Java 程序就是一直报 UnsatisfiedLinkError 的错误.
今天一早来, 又用 Google 找了一次, 找到第2篇文章:
Java Native Interface (JNI) - Creating JNI DLL on WinXP using MinGW and G
http://forum.java.sun.com/thread.jspa?threadID=5200233
发现自己是猪头, 哈哈!
原因是:
自己对 gcc 并不懂, 在前一天依据第一篇文章检查时,
自以为是的把自己认为并不重要的步骤省略了.
在第2篇文章中特别强调我所漏掉的步骤就是关键, 一定得做的 (详细说明请参考上列第2篇文章).
也就是在 gcc link 时, 需要加上 "-Wl,--add-stdcall-alias" 参数,
否则产生出来的 lib reference 会无法被正确呼叫到.
加上这个参数, 问题就解决了, 真幸运!
以上的问题是发生在 Win32 平台上;
Linux/UNIX 是不是也有相同问题, 等有机会遇到时, 再来测吧.
http://topatis.blog.ithome.com.tw/post/613/17245
发表评论
-
java调用dll方法
2011-06-02 21:56 1596Java语言本身具有跨平台性,如果通过Java调用DLL的技术 ... -
DIV+CSS
2011-05-31 13:07 899http://www.divcss5.com/ -
getWriter() has already been called for this response的解决办法
2011-05-30 14:15 3713Servlet规范说明,不能既调用 response.getO ... -
CVS客户端
2011-05-27 14:54 906http://www.syntevo.com/index.ht ... -
UML工具
2011-05-25 18:59 896http://www.umlchina.com/Tools/N ... -
applicationcontext.xml怎么分模块简化配置?
2011-05-22 18:02 2247(1) 在用spring做项止的时候,我们经常会在appli ... -
Struts1.2分模块后的路径问题
2011-05-22 18:00 16131.某项目分模块的web.xml配置如下: <i ... -
java API chm html 1.5 1.6 中文版英文版 帮助文档
2011-05-14 10:45 2674J2SE DK & API下载 ————————- h ... -
ClientAbortException原因探究
2010-12-23 16:17 1874WEB是部署在TOMCAT5.5.17下面的,采用JNDI链接 ... -
java游戏 http://blog.csdn.net/cping1982/archive/2009/06/10/4258704.aspx
2010-11-08 22:31 1251http://blog.csdn.net/cping1982/ ... -
Java中字符串(String)的存储和赋值原理
2010-11-08 22:14 1230可能很多java的初学者对String的存储和赋值有迷惑, ... -
Java中字符串的最大长度
2010-11-08 22:12 1316在cpp中为了可移植性,string的长度是string::s ... -
Java与XML联合编程之DOM篇
2010-10-06 13:37 889一、DOM初步 DOM是Document Object ... -
jexl解析表达式字符串
2010-10-06 11:44 1955网址:http://commons.apache.org/je ... -
Java中getResourceAsStream的用法
2010-10-06 11:31 2006Java中getResourceAsStream的用法 首先 ... -
Class.getResourceAsStream 和 ClassLoader.getResourceAsStream
2010-10-06 11:08 855Class.getResourceAsStream 和 Cla ... -
利用第三方的Jar包内的类和方法来判别文件编码
2010-08-06 13:07 1783今天在论坛里看见了一个人发帖子问,如何查看文件的编码。有一个人 ... -
将Java程序作成exe文件的几种方法
2010-08-06 13:04 963看到网上有同志的介绍将Java程序作成exe文件的方法,写的不 ... -
Java基本类型转换总结
2010-07-26 19:49 1390数值型转换成字符型 // 基本数据类型, int i_a ... -
怎样不使用中间变量来交换两个变量的值?
2010-07-10 21:39 1506int 的话就+后再减.string 的话就连接再截取. ...
相关推荐
使用gcc和g++编译jni指令太长,很麻烦。所以做了一个编译工具JNIBuilder.jar。 因为是用于jni的,所以默认使用者的电脑上已经安装好Java和MinGW,并且可用。 并提供一个测试例程。功能是jni函数调用java函数弹出一个...
总结,JNI是Java与本地代码交互的重要桥梁,GCC作为C/C++的编译器,可以很好地配合Java开发JNI程序。在使用GCC 4.4.0进行JNI编程时,要理解其编译过程,正确配置头文件路径,生成并链接合适的动态库,以便在Java程序...
这个过程涉及到JNI(Java Native Interface),它允许Java代码与用其他编程语言(如C或C++)编写的代码进行交互。 首先,我们需要了解Cygwin。Cygwin是一个提供Linux-like环境的软件集合,可在Windows操作系统上...
### 使用JNA替代JNI调用DLL,并解决内存溢出问题 #### 问题背景 在项目的开发过程中,常常遇到需要处理二进制流数据并对其进行解析处理的情况。这种情况下,如果上层应用平台采用的是Java开发,而底层算法或数据...
有时,升级或降级库版本可以解决问题。 在提供的`build-local.mk_setpath`文件中,可能包含了构建过程中的路径设置。这通常是在编译和链接本地库时使用的Makefile,用于指定编译器选项、库路径等。打开这个文件,...
3. 处理中文字符在Java与C/C++之间的传递,包括编码转换和线程安全问题。 4. Java中加载和调用本地库的方法。 5. 示例代码和文档,帮助读者实践和理解整个过程。 通过这个教程,你可以掌握使用JNI调用本地接口并...
JNI在很多场景下非常有用,比如当需要利用已有的C或C++库,或者提升性能时,我们可以通过JNI将Java代码与本地代码集成。 在描述中提到的`jni.h`和`jni_md.h`是JNI编程中必不可少的头文件。`jni.h`包含了JNI接口的...
JNI是Java平台提供的一种机制,允许Java代码与用其他语言(如C或C++)编写的代码进行交互,从而实现性能优化或者调用特定平台的功能。 首先,我们需要创建一个Java类,声明native方法并定义调用本地接口的逻辑。...
### jni需要注意的常见问题 #### 一、输入问题 ...通过以上步骤,可以有效地解决在使用 JNI 进行开发过程中遇到的一些常见问题。这些解决方案不仅可以帮助开发者避免编译错误,还能提高代码质量和可维护性。
JAVAjni,使用JAVA操作INI增删改查文件,UTF-8版,解决中文乱码问题
总结来说,`jni.pas`和`JNI_MD.INC`是Delphi开发者使用JNI的关键组件,它们使得Delphi程序能够无缝地与Java世界交互,扩大了Delphi的应用范围,特别是在需要与已有的Java系统集成或者利用特定平台原生功能时。...
解决JNI中文乱码,
教程名称:安卓JNI与底层开发项目视频与源码课程目录:【】安卓JNI-day01源码与资料【】安卓JNI-day01视频【】安卓JNI-day02源码与资料【】安卓JNI-day02视频【】安卓JNI-day03源码与资料【】安卓JNI-day03视频 ...
1. 找不到jni.h文件:该问题可以通过将jdk的bin目录和include目录添加到编译环境中来解决。 2. 动态链接库加载失败:该问题可以通过检查动态链接库的路径和名称来解决。 Jni是一种powerful技术,allowing Java程序...
总结来说,`jni.h`和`jni_md.h`是JNI的核心组成部分,它们使得Java代码能够与C/C++等本地代码无缝交互。开发者通过理解和应用这两个头文件提供的接口,可以实现Java和本地代码的高效集成,满足各种复杂需求。在实际...
JNI层内存泄漏检测工具是针对Android应用开发中的一个重要问题——JNI内存泄漏的解决方案。JNI,全称为Java Native Interface,允许Java代码与其他编程语言(如C++)交互,从而利用其性能优势。然而,由于Java和C/...
JNI(Java Native Interface)是Java平台的一个重要组成部分,它提供了在Java代码中调用本地(非Java)代码的能力,...同时,`jni_md.h`的使用则涉及到跨平台开发,理解其作用可以帮助解决在不同操作系统上遇到的问题。
2. **JNI环境设置**:在使用JNI前,开发者需要配置开发环境,包括安装Java SDK、设置JAVA_HOME环境变量,以及安装C/C++编译器,如GCC或Visual Studio。 3. **编写JNI头文件**:使用`javah`工具,根据Java类中的...
JNI程序员指南与规范.pdf + 06 JNI编程指南.pdf NDK开发汇总 https://blog.csdn.net/baopengjian/article/details/104615972 THIS book covers the Java™ Native Interface (JNI). It will be useful to you if ...