跳至主要內容

rhino - 犀牛Java交互

约 281 字小于 1 分钟道无涯

rhino模块提供了兼容rhino引擎的Java交互API,比如导入Java包、类。但该模块不提供JavaAdapter,请使用$java.defineClass来实现类似功能。

目录

变量

函数

变量

Packages

Const Packages: JavaPackages = rhino.packages

用于访问Java包或类。比如Packages.javaPackages.kotlin

示例

"nodejs";
const { Packages } = require("rhino");

const OkHttpClient = Packages.okhttp3.OkHttpClient;
const client = new OkHttpClient.Builder().build();

console.log(client);

函数

install

install(scope?): void

在作用域中安装兼容于Rhino引擎open in new window中Java交互相关的变量和函数,当前支持:

  • Packages变量,用于访问Java包或类
  • java, javax, org, com, edu, net, android等包,用于访问常见的Java包和类
  • JavaAdapter类,用于在JavaScript中实现Java类或接口的动态继承。当前版本尚不不支持,使用时会抛出异常

不支持importClassimportPackage函数,请直接用赋值语句代替。

示例

"nodejs";
require("rhino").install();

const View = android.view.View;
const StringBuilder = java.lang.StringBuilder;

console.log(View.class.getName());
console.log(new StringBuilder().append("Hello").toString());

参数

名称类型默认值描述
scopeanyglobal作用域,默认为global全局作用域

返回值

void