java简书_Java native代码编译步骤简书

Java native代码编译步骤简书

目的:防止java代码反编译获取密码算法

(1)编写实现类

com.godlet.PasswordAuth.java

(2)编译java代码

javac PasswordAuth.java

//中文乱码问题

javac -encoding utf-8 PasswordAuth.java

(3)切换到代码home目录

cd ..\..\

(4)生成Native 头文件 com_godlet_PasswordAuth.h

javah com.godlet.PasswordAuth

(5)生成动态native动态链接库

//windows 安装MinGW-W64 使用gcc

gcc -c -I"%JAVA_HOME%\include" -I"%JAVA_HOME%\include\win32" com_godlet_PasswordAuth.c -o PasswordAuth.o

gcc -Wl,--add-stdcall-alias -shared -o PasswordAuth.dll PasswordAuth.o

//linux

gcc com_godlet_PasswordAuth.c -I"${JAVA_HOME}/include" -I"${JAVA_HOME}/include/linux" -fpic -shared -o libPasswordAuth.so

(6)运行程序

//运行java程序 java.library.path在项目配置中修改VM options

java -Djava.library.path=. com.godlet.PasswordAuth

//或者在linux /usr/lib目录上放入so库或者创建.so库路径软链接(推荐)

//ln -s /opt/java/libPasswordAuth.so libPasswordAuth.so

//java com.godlet.PasswordAuth

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值