Android系统源码中添加可编译运行执行程序,java

文章目录

Android系统源码中添加可编译运行执行程序,java

1.Android设备中执行编译运行java代码

新建一个文件夹,以及Java类的包路径

测试代码

java 复制代码
package com.qfh.main;

public class TestJava
{
	public static void main(String[] args) 
	{
		System.out.println("Hello Java");
	}
}

在这个文件夹目录下新建一个Android.bp文件,对这个模块指定编译的方式

java 复制代码
java_library {
    name: "qfhtest",
    //打包成.dex文件才能被android虚拟机执行
    installable: true,
    srcs: ["**/*.java"],
    product_specific: true
}

在自定义的mk文件中,加上这个模块的名字,才能在编译系统的时候打包到系统里面

整编系统

运行模拟器,进入shell环境,来执行我们的java程序

发现有我们的jar包

java程序都要配置类路径

使用命令去执行

json 复制代码
export CLASSPATH=/product/framework/qfhtest.jar
app_process /product/framework/ com.qfh.main.TestJava

对比一下成功。

2.编译执行jar包

就拿我们刚刚的jar包来测试,

在out目录中自己找一下

Android.bp中

json 复制代码
java_library {
    name: "testjar",
    installable: true,
    product_specific: true,
    jars: ["qfhtest.jar"],
}

同样的方法

json 复制代码
PRODUCT_PACKAGES += testjar

整编系统源码

相关推荐
码农阿豪5 小时前
Nacos 日志与 Raft 数据清理指南:如何安全释放磁盘空间
java·安全·nacos
王码码20355 小时前
Flutter for OpenHarmony: Flutter 三方库 cryptography 在鸿蒙上实现金融级现代加解密(高性能安全库)
android·安全·flutter·华为·金融·harmonyos
直有两条腿5 小时前
【大模型】Langchain4j
java·langchain
love530love5 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
哈里谢顿5 小时前
Django 应用 OOM(Out of Memory)故障的定位思路和排查方法
python·django
消失的旧时光-19435 小时前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
莫寒清5 小时前
ThreadLocal
java·面试
甄心爱学习6 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
亚历克斯神6 小时前
Flutter for OpenHarmony:Flutter 三方库 yaml_edit 精准修改 YAML 文件内容(保留注释与格式的编辑神器)
android·flutter·华为·harmonyos
左手厨刀右手茼蒿6 小时前
Flutter for OpenHarmony: Flutter 三方库 image_size_getter 零加载极速获取图片尺寸(鸿蒙 UI 布局优化必备)
android·服务器·flutter·ui·华为·harmonyos