`
kjj
  • 浏览: 172147 次
  • 性别: Icon_minigender_1
  • 来自: 陕西
社区版块
存档分类
最新评论

JAVA调用DLL备忘 Eclipse 和DEV-C++环境

 
阅读更多


 参考 http://www.cnblogs.com/AnnieKim/archive/2012/01/01/2309567.html

这片文章说的是 java 通过jni 调用 c  的dll,只不过环境用的是vs 作为我们java界当然喜欢一切开眼的东西了

这里改造成dev-c++这个开源c++ ide 来实现,其实就是工具上的差异

首先写java端不多说,建工程

 

public class APCluster {
	public native int CallAPClusterDll(int data);

	static {
		 System.loadLibrary("APClusterDllMedium");
		System.out.println("I m in java");
	}
}

 public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		new APCluster().CallAPClusterDll(65535);

	}

}

 

 

C 端的  

 

 #include "APCluster.h"
 #include <cstdlib>

 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 typedef int*  (__stdcall *APCLUSTER32)(double*, unsigned int, bool);
 
 JNIEXPORT jint JNICALL Java_APCluster_CallAPClusterDll(JNIEnv *env, jobject _obj, jint _arg_int)
 {
     printf("%d",_arg_int);
     return 0;
 }
 
 #ifdef __cplusplus
 }
 #endif
 

  重要步骤主要在C端

  C 端:

  把

  %java_home%\include

  %java_home%\include\

  还有java端生成的  .h 文件的目录 一共三个都加入 c端的包含目录里来

 

  c端主要就这些了

 

  java端,声明完类后

  cmd 到javasrc下

  编译刚辞那个源文件 

  重要的步骤是 执行

  javah  APCluster  

  这个是生成c用到的头文件 

 

  然后把C生成的dll放在 系统路劲下 就是 环境变量 path 任何一个目录下 比如c:\\windows

 

  运行test 试试看!!

 

 

 

  • 大小: 36 KB
分享到:
评论

相关推荐

    vc调用dev-c++动态链接库dll示例

    本示例将详细介绍如何在Microsoft Visual C++(VC)环境中调用由Dev-C++编译的动态链接库。 首先,我们来看标题中的关键点:“vc调用dev-c++动态链接库dll示例”。这表明我们将使用VC作为客户端应用程序,调用由Dev...

    Dev-C++/C编译器

    Dev-C++是一款集成开发环境(IDE),主要用于C和C++编程。它以其轻量级、易用性和对初学者友好的特性而受到欢迎。这款IDE是开源的,由Bloodshed Software开发,后来由 Orwell Software 维护。Dev-C++集成了GCC编译器...

    eclipse-java-2022-06-R-win32-x86_64.zip

    6. **集成开发环境**:Eclipse不仅限于Java,通过安装不同的插件,还可以支持C/C++、Python、Web开发等多种语言。 7. **市场扩展**:Eclipse Marketplace提供了大量第三方插件,用于增强IDE的功能,如Mylyn用于任务...

    Dev-C++ 编译器安装、编译和调试简明教程

    Dev-C++是一款轻量级的C++集成开发环境(IDE),尤其适合初学者学习和使用。本教程将详细介绍如何安装、编译以及调试程序,帮助你快速掌握Dev-C++的基本操作。 **一、Dev-C++的安装** 1. **下载安装包**:首先,你...

    C++/C语言入门集成开发环境Dev-C++免费无需积分下载

    Dev-C++是一款面向初学者和专业开发者,支持C++和C语言的集成开发环境(IDE),它以其轻量级、易用性和免费的特点受到了广大编程爱好者的欢迎。本篇文章将详细介绍Dev-C++的特性和使用方法,帮助你快速入门C++和...

    Dev-Cpp 5.4.0编程软件C++下载C语言免费版

    Dev-Cpp是一款经典的C++集成开发环境(IDE),特别适合初学者和专业开发者进行C/C++编程。这个软件是开源的,因此它是免费的,同时因其用户友好的界面和丰富的功能,深受许多程序员喜爱,特别是在蓝桥杯等编程竞赛中...

    Dev-C++编译工具

    4. **调试器**:Dev-C++内嵌了GDB调试器,用户可以直接在IDE内部设置断点,单步执行,查看变量值,检查调用栈等,这对于学习和理解程序运行过程非常有帮助。 5. **可定制性**:用户可以根据自己的喜好调整编辑器的...

    Dev -C++ 软件安装包

    Dev-C++是一款经典的开源C++集成开发环境(IDE),它为初学者和专业开发者提供了编写、编译、调试C++程序所需的一切。这个软件安装包是绿色版,意味着它无需安装,下载后即可直接运行,避免了通常安装过程中可能携带...

    Dev-c++ 程序设计语言.rar

    Dev-C++是一款集成开发环境,特别适合初学者学习C++编程语言。这个压缩包"Dev-c++ 程序设计语言.rar"很可能包含了Dev-C++ IDE的安装文件以及相关的学习资料,比如C++程序设计的教程或者示例代码。下面我们将深入探讨...

    DEV-C++编译器.zip

    DEV-C++是一款轻量级的C++集成开发环境(IDE),专为初学者设计,同时也适合有一定经验的程序员。它提供了简洁的用户界面,集成了编辑器、编译器、调试器等工具,使得C++程序开发过程更为便捷。这款软件的特色在于其...

    Java调用C++的dll之-C++工程

    在IT行业中,跨语言通信是一项常见的任务,尤其是在Java和C++这两个广泛应用的编程语言之间。本文将深入探讨如何使用Java通过JNI(Java Native Interface)来调用C++编写的动态链接库(DLL)方法,以实现Java与C++的...

    非常好用java调用c++ dll文件demo

    Java调用C++ DLL文件是跨语言编程中的一个重要应用场景,特别是在既有Java代码库又有C++动态链接库的情况下。本文将详细讲解如何在Java程序中调用C++编写的DLL文件,以及一个可用的示例。 首先,理解Java与C++交互...

    dev c++ dev c++ dev c++

    Dev C++是一款集成开发环境(IDE),主要用于编写C和C++程序。这款软件因其轻量级、免费且易于上手的特性,在初学者和教育领域中广泛应用。标题和描述中的"dev c++ dev c++ dev c++"可能是强调或者重复表示Dev C++这...

    eclipse-jee-2018-09-win32-x86_64.zip

    Eclipse 是一个著名的开源集成开发环境(IDE),广泛用于Java编程,同时也支持其他语言如C/C++, Python等。"eclipse-jee-2018-09-win32-x86_64.zip" 是Eclipse针对Windows 32位和64位系统的2018年9月版本的下载包。...

    devcpp-4.9.9.2安装程序

    Dev-C++是一款轻量级的C++集成开发环境(IDE),特别适合初学者学习和使用。这个"devcpp-4.9.9.2安装程序"是该软件的一个特定版本,用于在计算机上安装该版本的开发环境。NOIP,全称全国青少年信息学奥林匹克联赛...

    eclipse-cpp-2023-09-R-win32-x86-64.zip

    Eclipse平台是用Java编写,因此它可以跨平台运行,但“win32-x86_64”表明该版本是为64位的Windows系统量身定制的,能够充分利用多核处理器和大量内存,以实现更流畅的开发体验。 1. **安装与配置**:下载并解压...

    Java调用动态链接库(Java 调用 DLL)

    无论是JNI还是JNA,都需要对C/C++和Windows API有一定的了解,因为DLL的函数签名、参数类型和调用约定等都需要正确地映射到Java代码中。同时,需要注意的是,这种方式可能会引入平台依赖性,因为DLL是Windows特有的...

    java调用C#封装的dll方法

    其中一种方案是使用Java Native Access (JNA) 来调用通过C++封装的C# DLL文件。 **步骤详解:** **1. 创建C# COM组件:** - **新建项目:** 在Visual Studio中创建一个新的类库项目,并命名为`COMTest`。 - **...

    JAVA调用DLL方法 JAVA调用DLL方

    在Java中调用DLL文件主要通过Java Native Interface (JNI)、JAWINJNative和JNA等技术来实现。这些技术允许Java程序与本地代码进行交互,从而实现对DLL文件的调用。 #### JNI (Java Native Interface) JNI是Java...

    Dev-Cpp安装包(无需积分,免费下载)

    3. **配置环境**:在首次使用时,可能需要配置编译器路径和环境变量,确保Dev-Cpp能正确识别和调用GCC。 4. **更新与维护**:由于Dev-Cpp是一个较老的项目,可能无法支持最新的C++特性。你可能需要寻找替代的IDE,...

Global site tag (gtag.js) - Google Analytics