`
勤奋的蜗牛
  • 浏览: 15739 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

使用JNI时,如何生成dll

阅读更多
方法一:
   如果安装有VS,利用VS的编译器直接生成dll,以VS2005为例:
   打开vc下的cl.exe,如果打开的时候提示出错,你就要先运行一下vcvars32.bat,再运行cl.exe。 使用如下命令: cl -I %java_home%\include -I %java_home%\include\win32 -LD HelloWorldImpl.c -Fehello.dll 说明:生成的dll文件名在选项-Fe后面配置,这里是hello,回车之后即可生成dll
方法二:
   使用gcc、g++,这需要安装MinGW,安装完成之后,添加环境变量。
   如果是使用C语言,请添加环境变量”C_INCLUDE_PATH”
   如果是使用C++语言,请添加环境变量” CPLUS_INCLUDE_PATH”
eg:CPLUS_INCLUDE_PATH=D:\JDK5\include;D:\JDK5\include\win32 C_INCLUDE_PATH=D:\JDK5\include\win32;D:\JDK5\include
在cmd中,运行命令即可。
如: gcc –shared –o hello.dll -Wl,--kill-at HelloWorldImp.c
或者是g++ –shared –o hello.dll -Wl,--kill-at HelloWorldImp.cpp
分享到:
评论

相关推荐

    在windows中jni(生成dll)Linux中jni(生成so),java调用曾c++

    - 生成DLL:使用`cl`命令行编译器,将源文件编译成DLL和对应的.lib文件。 3. **在Linux上生成SO文件** - 使用GCC或G++:创建一个新的C++源文件,编写JNI头文件后,实现本地方法。 - 配置编译选项:使用`g++`...

    使用JNI,vs2010 生成dll, JSP中调用dll

    本教程将详细介绍如何使用JNI,Visual Studio 2010来生成DLL动态链接库,并在JSP(Java Server Pages)中调用这些DLL。 首先,让我们理解JNI的基本原理。JNI是Java平台标准的一部分,它为Java程序员提供了一种方法...

    Java JNI例子-创建DLL、项目导入DLL、IDEA配置JNI、JNI调用DLL(该DLL同时依赖第三方DLL)

    Java JNI例子-创建DLL、项目导入DLL、IDEA配置JNI、JNI调用DLL(该DLL同时依赖第三方DLL)

    JAVA通过JNI调用C#dll的整个项目工程

    编译完成后,生成的DLL文件将包含可供其他程序使用的函数。 3. **JNI头文件生成**: 使用Java的`javah`工具,根据Java中定义的本地方法接口(native method),生成对应的C/C++头文件。这个头文件包含了JNI函数的...

    java使用JNI调用C++ dll库用法概述

    Java使用JNI(Java Native Interface)调用C++ DLL库是一种常见的技术,特别是在需要利用Java的跨平台特性同时利用C++的高效性能时。JNI提供了一种桥梁,使得Java代码能够直接与本地代码交互,比如C++编译的动态链接...

    Java通过JNI调用C++的DLL文件.docx

    使用 JNI 将 Java 应用程序与 C++ DLL 文件集成需要以下步骤:创建一个 Java 工程,生成 `.class` 文件,使用 `javah` 命令生成 `.h` 头文件,创建一个 C++ 工程,并将生成的 `.h` 头文件复制到工程中,编写 C++ ...

    使用JNA替代JNI调用DLL,并解决内存溢出问题

    ### 使用JNA替代JNI调用DLL,并解决内存溢出问题 #### 问题背景 在项目的开发过程中,常常遇到需要处理二进制流数据并对其进行解析处理的情况。这种情况下,如果上层应用平台采用的是Java开发,而底层算法或数据...

    JAVA JNI调用DLL完整步骤

    在某些场景下,比如调用操作系统特定的功能或者利用已有的C/C++库,我们需要使用JNI来实现Java与本地代码(如DLL动态链接库)的交互。本教程将详细介绍如何通过JNI在Java中调用DLL的完整步骤。 1. **创建Java类和...

    Java JNI调用DLL方法

    Java Native Interface ...4. 编译生成DLL库。 5. 设置Java的`java.library.path`以加载DLL。 6. 在VC中配置调试参数,指定Java类路径和主类。 通过以上步骤,你可以成功地在Java程序中调用VC编写的DLL,并进行调试。

    JNI测试Demo(包括生成dll的C项目)

    这是个JNI的测试Demo,在于让大家了解不通过NDK开发JNI的过程,当然博客中也有讲解通过NDK开发JNI的过程。对应博客讲解地址为:http://blog.csdn.net/chenliqiang12345678/article/details/50492497

    jni调用第三方dll最简单的实例

    总结来说,这个实例展示了如何使用JNI调用第三方DLL的基本步骤:在Java中声明native方法,生成JNI头文件,实现C/C++代码并调用DLL函数,最后编译生成本地库。虽然这是一个简单的例子,但理解这些基本概念对于深入...

    JAVA项目JNI调用dll实现DEMO源码,C++&JAVA

    完整的实现java跨平台调用C程序源码,包含JAVA源码和C源码以及编译后的demo...若要修改dll可以,修改C源码后重新编译生成dll。该demo处理了多线程调用c,全局变量干扰问题。源码全是自己写的,整个过程以及结果完整验证

    JNI_Demo.rar_DEMO_JNI DEMO_jni c_jni dll_vc6 dll

    首先,"VC6.0生成DLL"表明这个项目是在Microsoft Visual C++ 6.0环境下创建的,这是一个经典的C++集成开发环境。在这个环境中,开发者可以编写C++代码并将其编译为DLL文件,该文件可以在运行时被其他程序动态加载和...

    java运用jni调用dll实现屏蔽系统热键和任务栏

    1. **编写JNI头文件**:使用`javah`工具,根据Java中的`native`方法生成C/C++的头文件,定义DLL函数的原型。 2. **实现DLL函数**:在C/C++环境中实现这些函数,调用Windows API完成实际功能。 3. **编译DLL**:...

    JNI DEMO:java jni技术 调用 c/c++ 的dll

    在这个"JNI DEMO"中,我们将探讨如何使用JNI来调用C/C++编译生成的DLL(动态链接库)文件。 首先,我们需要了解JNI的基本工作原理。JNI为Java程序提供了一种机制,使得Java代码可以声明native方法,这些方法在Java...

    JNI调用第三方dll实例

    在本实例中,我们将深入探讨如何使用JNI调用第三方DLL(动态链接库)文件,这是在Java应用程序中利用C++或C代码能力的常见场景。这个实例是在Visual Studio 2010环境下构建的,但请注意,其他环境可能需要不同的配置...

    Java采用JNI调用VC++生成的dll(Java与C++交互)

    使用C++编译器(如g++或MSVC++)编译C++源文件,生成DLL文件。在Windows环境下,这通常是`.dll`文件;在Linux或macOS下,可能是`.so`或`.dylib`。 6. **加载并调用DLL**: 最后,Java程序通过`System.loadLibrary...

    springboot+jna/jni调用动态so/dll库

    3. **定义接口**:使用JNI时,需要编写C/C++代码实现本地方法,并在Java代码中声明对应的本地接口。JNA则通过定义`Interface`来映射本地函数。 4. **调用方法**:一旦库加载成功,就可以在Java代码中像调用普通Java...

    jni调用c++ delphi中的dll.

    本主题将深入探讨如何通过JNI来调用C++和Delphi中编译生成的DLL动态链接库。 1. **JNI基础** JNI是Java平台的核心组件之一,它为Java应用程序提供了一个桥梁,使其能够与本地代码交互。JNI提供了一系列的函数接口...

    cygwin可以编译生成windows下供调用的dll

    - **链接生成DLL**:接着使用`gcc-shared`选项链接生成DLL文件。 ```bash gcc -shared xxx.o -o xxx.dll ``` ##### 2. 创建DLL示例 例如,要创建一个名为`MyTest.dll`的DLL文件,可以按以下步骤操作: - 首先...

Global site tag (gtag.js) - Google Analytics