3

我不确定是否将其放在 Superuser 或 Stack Overflow 上,但我选择了这里,因为它涉及有关Gosu 编程语言的软件开发。

Gosu 编程语言需要 Java 8 并且不接受 Java 11 或更高版本的 JDK/JRE(不确定哪个相关)。这是一个问题,因为我有 Java 11,而开发团队让这个问题困扰了很长时间。它在错误跟踪器上,很长一段时间没有人对此做过任何事情。

我需要建立一个Java 8和Java 11的开发环境,在J​​ava 8的环境中安装Gosu,然后弄清楚如何修改Gosu的源代码使其与Java 11兼容。有人指导吗谁做了类似的开发和项目分叉?

4

3 回答 3

3

关于 Gosu 和 Java 11,Gosu 的最新版本1.15.0 仅支持 Java 11。

于 2019-04-28T19:31:58.507 回答
2

我会下载 docker 并为您的每个 jdk 环境设置单独的 docker 容器。然后在适当的地方添加 gosu 语言项目具有的任何其他依赖项。docker 容器将保持一组依赖项分开,并防止它们相互干扰。

于 2019-04-28T05:25:56.967 回答
2

这可以分为3个问题

  1. 安装多个 JDK 版本
  2. 为您自己的开发默认每个项目
  3. 在 OSX 上运行时选择特定版本

对于主要是本地开发,您可能需要像这样的流程

使用 brew 安装多个 JDK 版本

$ brew cask install caskroom/versions/java11
$ brew cask install adoptopenjdk/openjdk/adoptopenjdk8

$ ls /Library/Java/JavaVirtualMachines/
adoptopenjdk-12-openj9.jdk graalvm-ce-1.0.0-rc14      jdk1.8.0_65.jdk            openjdk-11.0.2.jdk

选择然后使用 jEnv 进行开发(与 bash 很好地配合使用)https://www.jenv.be/

对于脚本,如果在 OSX 中运行,请使用 java_home

$ /usr/libexec/java_home -v 11
/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home
$ /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/graalvm-ce-1.0.0-rc14/Contents/Home
于 2019-04-28T05:33:38.540 回答