中文编程
首发于中文编程

在Maven Central发布中文API的Java库

相关问题: 哪些Java库有中文命名的API?

且记下随想.

之前没有发布过, 看了SO上的推荐:Publish a library to maven repositories 决定在sonatype发布. sonatype发布开源软件库的步骤写的蛮详细, 不过一些细节比如命令行指令可能有段时间没更新了. 比如有个坑是发布gpg的公开秘钥, 指定server的时候如果有hkp://前缀的话就报错 no route to host, 不知是否因为我用的gpg2, 试了各种才发现去掉前缀就行了.

在命名上, API方法和参数以及类名都用了中文. 下面是Eclipse中的Javadoc弹窗:

根据Guide to Naming Conventions, groupid还是沿用了域名命名, artifactiId也还是用英文. 以后可能试试中文artifactId, 应该不算"strange symbols".

发布了几个小版本, 感觉有时需要一个多小时在pom里引用, 更新还算蛮快.

<dependency>
  <groupId>com.github.nobodxbodon</groupId>
  <artifactId>zhconverter</artifactId>
  <version>0.0.5</version>
</dependency>

项目源码: program-in-chinese/zhconverter

希望找到前人, 结识来者.


2017.12.19

今天为了尝试发布, 运行"$ mvn clean deploy -P release". 但报错:

gpg: selecting openpgp failed: Operation not supported by device
gpg: signing failed: No pinentry
gpg: signing failed: No pinentry

不知何故, 但重装GnuPG解决问题.

文章被以下专栏收录

    在所有编程语言和领域中尝试编写中文代码,开发相关工具,总结经验,一致代码风格。包括中文命名,汉化现有语言,创造中文语法的编程语言等等。作为最熟悉的母语,用来编写代码会让代码更容易被自己和母语相同的其他开发者理解。基于英文的编程语言和框架中,使用中文命名有时有技术问题。希望这里为后人趟雷,填坑。多数现有API是英文的,这里也会对其中一些常用的进行汉化。当然,这里也会对基于中文的编程语言进行探讨。包括汉化基于英文的编程语言,以及创造新的编程语言。