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

整编系统源码

相关推荐
随遇而安zx2 分钟前
【多线程】---ConcurrentHashMap 源码解析
java·多线程·并发
不才不才不不才9 分钟前
Spring 源码系列(27): @Transactional 七大失效场景与源码归因
java·后端·spring
随遇而安zx12 分钟前
【多线程】---线程池 ThreadPoolExecutor 原理与调优
java·线程池·多线程
抠脚小弟15 分钟前
WebSocketServer 使用详解:从入门到实战
java·spring·websocketserver
随便做点啥20 分钟前
32卡64G-910B4-16后端集群部署报告
java·大数据·运维
名字还没想好☜25 分钟前
Python 字符编码实战:encode/decode、UnicodeDecodeError 与 open 的 encoding 坑
开发语言·后端·python·编程语言
Wang's Blog29 分钟前
Java框架快速入门: Spring Security+OAuth2之字段验证与自定义验证注解实战
java·算法·spring
CodeStats30 分钟前
【Java 类加载器】Java 类加载器完整体系深度拆解(上):从 JVM 启动到双亲委派模型
java·开发语言·jvm·classloader·双亲委派
带多刺的玫瑰35 分钟前
Leecode#29刷题之两数相除
java·python·算法
smj2302_7968265236 分钟前
解决leetcode第4017题数组中的峰值II
python·算法·leetcode