在Eclipse中设置进行JNI的头文件编译方法


这两天在搞NDK开发,JNI的头文件进行编译的时候,要跑到对应的class文件路径下(通常是工程的bin目录),进行编译生成,很是不便,也容易出错,所以考虑在Eclipse中作为外部工具引入,所以便查了下资料,现记录下来。

 

方法是:

 

1、在Eclipse环境下,打开下图中的最右边那个按钮。

 

 

 

2、新建一个Program,写上名字比如“javaH”,然后填写下面几项内容:

2.1、Location:把JDK下面的javaH.exe的全路径填进来。

2.2、Working Directory:

 

  ${project_loc}/bin

 ${project_loc}为在Eclipse环境下的变量,是工程路径的意思,定位到该路径的bin目录下,也就是classes文件存放的路径。

 

2.3、参数:

 

Arguments: -classpath .;./classes -d "${project_loc}/jni" -jni ${java_type_name}

 

 -classpath设定为”.;./classes“,意思是当前路径,这样可以让你需要编译的类中引用到的其他类也能被找到。

 -d设定为”${project_loc}/jni“,也就是编译出来的H文件生成到工程下面的jni文件夹去。

 ${java_type_name}是需要编译的类名。

 

3、跑到Eclipse工程中选中一个需要编译的类,然后按这个按钮试试。是不是在你的jni文件夹下生成了?




 

末了,补充一句,在命令行下标准的编译命令为下述:

 

javah -classpath A -d B -jni C

 

A:class文件的路径

B:H文件的生成路径

C:类的全称

 


 

Java学习之通过JNI调用C/C++编写的dll链接库(图文教程) 看了网上几个主要的教程,都会导致出现各种错误,对于初学者来说会造成一些困扰。在这里详细记录一下JNI调用过程。本案例的基本配置:Eclipse+VS2015,Win10  64位 (1)编写Java Project 打开Eclipse,新建一个Java Project,如:LearnJNI。新建包名,如:com.cogito。新建一个类TestNative。 编写代码,如下: pack 阅读详情

相关推荐

Xilinx PL端DP显示接口开发实战(一)——环境搭建与硬件选型

本文详细介绍了Xilinx PL端DP显示接口开发的环境搭建与硬件选型实战经验。从Vivado和Vitis 2021.1版本的软件安装要点,到DP141和MCDP6000芯片的选型建议,再到DP1.4接口的RX/TX方向开发关键点,为开发者提供了全面的技术指导。文章还分享了IP核配置、BD原理图设计以及常见问题排查的实用技巧,帮助开发者高效完成Xilinx DP接口开发项目。

weixin_29250573的博客 174

Eclipse自动编译NDK/JNI的三种方法

1.工程上点击右键选择设置Properties 2. 点击New按钮,新添加一个编译器,点击后出现添加界面,选择Program,点击OK: 3.     点击OK后,出现了添加界面:         在Edit configuration界面, 填充以下内容:    Name:                      编译器名称,随便填写

xajhsunei的专栏 562

别再只盯着MES了!半导体/面板厂CIM系统全家桶(EAP/YMS/SPC)保姆级入门指南

本文深入解析半导体制造中的CIM系统,涵盖EAP、YMS和SPC等关键子系统的协同工作。通过实战案例和技术细节,展示如何利用CIM系统提升生产效率、良率管理和设备维护,为半导体/面板厂提供全面的实施指南和优化策略。

weixin_33693070的博客 464

Eclipse下的Android JNI 开发

jni开发接口头文件的定义很重要,如果频繁的修改上层的接口,一键生成/更新jni头文件就显得尤为快捷. 此头文件是利用javah来生成的(javah来自于JDK), 一.Eclipse->Run->External Tool->External Tool Configurations配置新的external tool javah 测试j

bingqingsuimeng的专栏 589

python sci sci-hub 爬论文

sci-hub 爬虫 后续加入对于时间的排序,下载最新文献 参考: https://www.guanjihuan.com/archives/6846 https://blog.youkuaiyun.com/czh2637750821/article/details/115508922

weixin_42783619的博客 3542

数控系统(CNC)系列:Hurco VMX42SR_(3).控制系统硬件组成部分

控制箱是CNC系统的核心部分,负责处理所有的控制指令和数据。它通常包含主控板、电源模块、接口板等关键组件。伺服驱动器是CNC系统中的关键组件,负责将主控板发出的控制信号转换为电机所需的驱动电流。它通过闭环控制确保电机的精确运动。电机是CNC系统中的执行机构,负责实现主控板发出的运动指令。常见的电机类型包括步进电机和伺服电机。传感器是CNC系统中的重要组件,用于检测和反馈机床的运行状态。常见的传感器类型包括位置传感器、速度传感器、温度传感器等。电源供应系统为CNC系统的所有组件提供电力。主电源。

2401_87715305的博客 1280

在Eclipse下配置NDK

按自己配置的经验整理出详细步骤如下: 1)  下载NDK,解压出来,直接可用。(可以不添加环境变量) 2)   在Eclipse中配置NDK路径:Window->Preference->Android->NDK 3)   新建Android工程,新建含本地方法的类[A],方法声明为native 4)   在工程目录下新建jni文件夹 5)   控制台进入类A所在目录,使用命令:javac

SteadySpace的专栏 979

一个中科大差生的8年程序员工作总结

今年终于从大菊花厂离职了,离职前收入大概60w不到吧,在某乎属于比较差的,今天终于有空写一下自己的职场故事,也算是给自己近8年的程序员工作做个总结复盘。近8年有些事情做对了,也有更多事情做错了,在这里记录一下,希望能够给后人一些帮助吧,也欢迎私信交流。文笔不好,见谅,有些细节记不清了,如果有出入,就当是我编的这个故事吧。 PS:有几个问题先在这里解释一下,评论就不一一回复了 1、关于差生,我本人在科大时确实成绩偏下,差生主要讲这一点,没其他意思。 2、因为买房是我人生中的大事,我认为需要记录和总结一下

陈小房的自我修炼 5万+

在eclipse中配置android ndk的自动编译环境builders

无论linux还是mac在jni目录中直接运行  ndk-build 就可以生成 lib目录及所需要的 so文件; windows 装上lnx模拟器也是一样; 每次修改完 c++代码, 都要运行一下 ndk-build,然后在 eclipse中运行 java 程序;非常之麻烦;

maikforever 的专栏 1045

【MODBUS】Java实现的Modbus协议类库——推荐j2mod库

Jamod是另一个开源的Modbus Java库。这个库的设计是完全面向对象的,基于抽象,应该支持易于理解、可重用性和可扩展性。它支持Modbus RTU和Modbus TCP,并且提供了主站和从站的功能。这是jamod Modbus库的一个分支,取自1.2.1版本,根据Apache 2许可证发布,包含在该项目的SVN存储库中。j2mod项目的目标是基于Java编程语言生成一个功能更全面的Modbus(tm)通信库。这是一个积极开发的项目,接受具有Modbus主站和从站开发经验的专业软件工程师提交的文件。

开源物联网项目商业化作者 5639

GStreamer Plugin之Gst-nvdewarper

支持三种投影类型 NVDS_META_SURFACE_FISH_PUSHBROOM, NVDS_META_SURFACE_FISH_VERTCYL 和NVDS_META_SURFACE_PERSPECTIVE_PERSPECTIVE。关于每个平面的NvDewarperSurfaceMeta参数(projection_type, surface_index, and source_id)以及内存中有效的矫正平面(num_filled_surfaces)包含RGBA格式的一帧的缓存。矫正后的RGBA格式。

pvmsmfchcs的博客 368

Jni开发(一)编写Jni头文件

JNI开发 Makefile编译生成so

dream_xang的博客 4664

【Bug已解决】Claude Code Auto-update failed 自动更新失败的解决方案

方案适用场景推荐指数清理残留重新安装已经损坏,需要快速恢复可用⭐⭐⭐⭐⭐修复目录权限权限不足导致更新反复失败⭐⭐⭐⭐⭐关闭自动更新网络/安全软件环境不稳定⭐⭐⭐切换原生安装方式想从根源规避 npm 更新问题⭐⭐⭐⭐自检修复脚本团队/服务器环境需要自动化恢复⭐⭐⭐报错的本质是自动更新过程中的文件替换操作因权限不足或被中断而处于不完整状态,而不是 Claude Code 本身的功能缺陷。遇到问题先清理残留文件再重新安装,不要在损坏状态上反复尝试修复;

一键难忘的博客 1万+

java eclipse jni_eclipse调用jni

http://blog.chinaunix.net/uid-27003388-id-3235189.html1.在Eclipse里创建一个Java project(jni_test);在src里创建一个package,取名为jni;然后在jni里创建一个带有native声明的方法的java类(helloworld.java),文件具体内容如下:packagejni;publicc...

weixin_33323907的博客 334

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

java jni helloword_eclipse下jni初学,调用helloworld.dll,打印字串”Hello world!”

1.在Eclipse里创建一个Java project(jni_test);在src里创建一个package,取名为jni;然后在jni里创建一个带有native声明的方法的java类(helloworld.java),文件具体内容如下:packagejni;publicclasshelloworld {static{System.loadLibrary("helloworld");}public...

weixin_39566578的博客 142

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

android NDK开发编译C++文件出现Type 'jint' could not be resolved和Unresolved inclusion: <jni.h>的解决办法

今天在编译android NDK工程的时候,在jni文件夹下的cpp文件中报了一大堆错误,诸如:Unresolved inclusion: <jni.h>、Type 'jint' could not be resolved、Type 'jintArray' could not be resolved等,根据经验,这样的错误肯定是没有包含相应的头文件导致的。 解决方案: 选中工程,右键->Properties,点击C/C++ General展开,点击Path and Symbo

遨游网络huster的专栏 6648

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

java jni 调用_java jni调用过程分析

1.定义java类中的native方法,新建下面一个类public class NativeDemo {public static native void say(); //static的native方法public native void sayHello(); //实例的native方法,两者的处理不一样public static int number = 10;int a = 2;pub...

weixin_32954161的博客 641

[Android]NDK开发环境配置与JNI开发

本文的目标是实现NDK开发环境的配置以及学习JNI开发流程。1.环境配置 本文的开发环境为win10 64位+Eclipse+Android ADT+NDK+CDT。 2.安装: 这里只介绍NDK和CDT的安装。 2.1从链接:http://dl.google.com/android/repository/android-ndk-r11c-windows-x86_64.zip下载NDK开发包

Forgive Me 6688

Android NDK开发之旅(1): Eclipse中NDK环境搭建与JNI开发流程

看着本篇文章的标题,或许你会问现在AndroidStudio版本都更新到3.0了,从2.2开始就可以直接使用Cmake来构建NDK项目,根本没有必要再去研究NDK在Eclipse中的开发。嗯,在我使用过AndroidStudio构建NDK项目后,我也是这种想法,通过cmake编译C/C++代码来构建NDK开发框架确实是非常智能、步骤也很简单,完全可以秒杀Eclipse。但是,对于从来没有开发NDK项目的人来说,直接上AS开发可能一是无法明白这其中的原理,比如Android项目是如何构建C/C++开发环境的、

老蒋也疯狂 4403

ubuntu ndk 开发

  参考 https://developer.android.com/ndk/index.html   配置 下载android-ndk-r10d-linux-x86_64.bin  ,运行自解压。 ~/.bashrc中加入 export ANDROID_NDK=/home/james/android/android-ndk-r10d export PATH=$ANDROID_N...

weixin_33709609的博客 179

【android】NDK开发编译C++文件出现Type 'jint' could not be resolved和Unresolved inclusion: <jni.h>的解决办法

今天在编译android NDK工程的时候,在jni文件夹下的cpp文件中报了一大堆错误,诸如:Unresolved inclusion: 、Type 'jint' could not be resolved、Type 'jintArray' could not be resolved等,根据经验,这样的错误肯定是没有包含相应的头文件导致的。         解决方案:        

u011494050的专栏 1876

搞定android JNI

关于什么是JNI,我想对于学习android的人一定不会陌生,如果实在不了解你可以GOOGLE一下,本人就不解释了。我今天主要想通过一个实例,让大家感受下它的使用。先介绍下我的一些开发环境和目的: 实例的开发环境:Eclipse +android ADT +windows xp+jdk 1.6.0.20+Vmware+Ubuntu 10.04       实例的目的::android的ja

636

Android JNI helloworld程序编写与编译-图文解说

这是一个经典的helloworld程序,此程序本身并没有什么功能,但是其意义在于抛砖引玉。了解了JNI的机理,对于那些习惯于C程序的人很重要,在处理底层的读写等操作就可以在UI层用java轻而易举地实现,就 如同C程序中调用一个系统调用那么简单,下面分步叙述。 一、创建最上层的java程序   首先打开eclipse,创建一个java工程,并在工程中添加一个类,类名为hellowor

joeyaung_1983的专栏 815

找不到android.graphics,javah报错找不到类android.graphics.Bitmap的异常

作为Android开发者,接触JNI编程应该是必不可少的,每次通过Dos命令生成.h文件总是让人失落很多,所以要借助Eclipse的强大功能了!!!下面为配置的全部截图,希望可以让有心者省去不少力气:Eclipse->Run->External Tools->External Tools Configurations双击Program 以上配置结果如下,各路径均为我自己的路径,配...

weixin_32911063的博客 1037
上一篇: android4.3应用程序隐藏状态栏和标题栏
下一篇: java中thread的start()和run()的区别
bbwang8088
博客等级 码龄20年 1粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值