尝试方舟编译器下对Java中标识符中文命名
发布日期:2021-06-29 15:28:50 浏览次数:2 分类:技术文章

本文共 1549 字,大约阅读时间需要 5 分钟。

之前承蒙这位测试, 方舟编译器支持Java下的中文命名标识符:

为了确认之前()的源码汉化不会影响编译, 自己也试试.

编译方法参考:

注: 留意jbc2mpl命令需在libjava-core下运行, 否则报错"Unable to open java-core.jar".

编译helloworld后, 运行$java HelloWorld输出"Hello World!"无误.

下面改为你好.java 如下:

public class 你好 {
public static void main(String[] args) {
System.out.println("吃了么!"); }}

Makefile修改为:

APP = 你好include $(MAPLE_BUILD_CORE)/maple_test.mk

照前一样编译, 运行$java 你好也正确输出"吃了么!" (09/13补: 貌似生成.class这步是用了OpenJDK而非方舟?)

比较在意的是, 生成的.class文件小一些在预料之内, 但其他所有文件比英文的大一圈(如下):

-rw-r--r-- 1 xw xw   534 Sep  8 03:25 HelloWorld.class-rw-r--r-- 1 xw xw   790 Sep  8 03:25 HelloWorld.jar-rw-r--r-- 1 xw xw   124 Sep  8 04:33 HelloWorld.java-rw-r--r-- 1 xw xw  2442 Sep  8 03:47 HelloWorld.mpl-rw-r--r-- 1 xw xw   488 Sep  8 03:47 HelloWorld.mplt-rw-r--r-- 1 xw xw     0 Sep  8 03:47 HelloWorld.VtableImpl.groots.txt-rw-r--r-- 1 xw xw 12517 Sep  8 03:47 HelloWorld.VtableImpl.mpl-rw-r--r-- 1 xw xw   118 Sep  8 03:47 HelloWorld.VtableImpl.primordials.txt-rw-r--r-- 1 xw xw 20520 Sep  8 03:47 HelloWorld.VtableImpl.s-rw-r--r-- 1 xw xw    55 Sep  8 03:49 Makefile-rw-r--r-- 1 xw xw   520 Sep  8 03:49 你好.class-rw-r--r-- 1 xw xw  1248 Sep  8 03:49 你好.jar-rw-r--r-- 1 xw xw   118 Sep  8 03:49 你好.java-rw-r--r-- 1 xw xw  4370 Sep  8 03:49 你好.mpl-rw-r--r-- 1 xw xw   712 Sep  8 03:49 你好.mplt-rw-r--r-- 1 xw xw     0 Sep  8 03:49 你好.VtableImpl.groots.txt-rw-r--r-- 1 xw xw 17231 Sep  8 03:49 你好.VtableImpl.mpl-rw-r--r-- 1 xw xw   142 Sep  8 03:49 你好.VtableImpl.primordials.txt-rw-r--r-- 1 xw xw 30927 Sep  8 03:49 你好.VtableImpl.s

有兴趣的可以先研究下.

转载地址:https://codeinchinese.blog.csdn.net/article/details/100887044 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:手工翻译方舟编译器源码: IR相关节点类
下一篇:手工翻译方舟编译器源码:尝试重命名标识符与文本

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月06日 05时12分59秒