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

整编系统源码

相关推荐
未若君雅裁6 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手6 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
阿维的博客日记7 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI7 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
Android小码家8 小时前
Framework之Launcher小窗开发
android·framework·虚拟屏·小窗
赏金术士8 小时前
第七章:状态管理实战与架构总结
android·ui·kotlin·compose
彦为君8 小时前
Agent 安全:从权限提示到沙箱隔离
python·ai·ai编程
辰海Coding8 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
小小编程路8 小时前
C++ 多线程与并发
java·jvm·c++