使用连字符转义模块名称锡兰模块描述符

Escaping module names with hyphen ceylon module descriptors

如何转义 Ceylon 模块描述符中的连字符?

导入com.fasterxml.jackson-核心“2.8.4”;

编辑: 在这种情况下,jar 将被下载并包含在本地锡兰存储库 ./repo 的正确文件层次结构中。所以,我希望我可以像处理任何其他 .car 一样处理它。然后,唯一剩下的问题就是转义模块名称中的连字符。

您可以使用引号。还建议指定显式 maven: 命名空间:

import maven:"com.fasterxml.jackson.core:jackson-core" "2.8.4";

参见第 9.3.10 节。锡兰语言规范的“模块描述符”:

Note: quoted module names enable interoperation with Maven and other module repository systems whose module identifiers do not comply with the format specified for Ceylon module names.

从 Ceylon 1.3.2 开始,首选语法是引用:

  • 只有 maven 工件 ID,因为那是经常有破折号的部分,并且
  • 不是 Maven 组 ID,因为它几乎总是合法的 Ceylon 模块名称。

所以你会写:

import maven:com.fasterxml.jackson.core:"jackson-core" "2.8.8";

我假设 this 是您要导入的模块。