我想通过他们的Deb repo将Typesafe Stack安装到Ubuntu Server,但不需要下载所有的OpenJDK软件包。我安装了Oracle JDK 6并通过 update-alternatives 在我的PATH中安装OpenJDK打破了一些东西。
最好的方法是什么?似乎我不能使用apt-get --no-install-recommended标志:
$> sudo apt-get install --no-install-recommends typesafe-stack sbt
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
ca-certificates-java default-jre default-jre-headless g8 java-common libaccess-bridge-java libaccess-bridge-java-jni openjdk-6-jre
openjdk-6-jre-headless openjdk-6-jre-lib
Suggested packages:
equivs icedtea-plugin sun-java6-fonts ttf-sazanami-gothic ttf-kochi-gothic ttf-sazanami-mincho ttf-kochi-mincho ttf-telugu-fonts ttf-oriya-fonts
ttf-kannada-fonts ttf-bengali-fonts
Recommended packages:
icedtea-netx icedtea-6-jre-cacao icedtea-6-jre-jamvm
The following NEW packages will be installed:
ca-certificates-java default-jre default-jre-headless g8 java-common libaccess-bridge-java libaccess-bridge-java-jni openjdk-6-jre
openjdk-6-jre-headless openjdk-6-jre-lib sbt typesafe-stack
0 upgraded, 12 newly installed, 0 to remove and 7 not upgraded.
Need to get 33.0 MB of archives.
After this operation, 86.9 MB of additional disk space will be used.
Do you want to continue [Y/n]? n
Abort.
PS - 我知道Typesafe Stack组件可以与我当前的设置一起使用,因为我安装了它并且使用他们之前的安装程序运行良好。
答案 0 :(得分:0)
我目前正在Ubuntu自己的'universe'存储库中查看'scala'和'scala-library'软件包,而不是Typesafe存储库。这些包依赖于'java6-runtime'(我运行Ubuntu 12.10,'Quantal')。对于在Typesafe存储库中找到的包可能不是这种情况,但原则应该是相同的。
equivs 包可用于创建虚假包裹存根(例如Package: local-java-runtime
),虚假地声称提供了不受欢迎的JRE(例如:Provides: java6-runtime
)。
这样你可以手动安装你想要的任何支持Scala的JRE,然后安装你创建的存根包,apt-get install scala
将不再抱怨(存根包将满足依赖性,而APT不必拉入JRE)。
看看here,阅读有关等值的内容,看看它是如何完成的。
BTW,至少对于我正在运行的Linux发行版,我看到'openjdk-7-jre'已经提供了'java6-runtime',所以也许'java6-runtime'的依赖性不会比过去。答案 1 :(得分:0)
老问题,现在已经在我的OP下的评论中得到了很长一段时间的回答,现在就把它正式化了。在基于Debian的系统上,只需使用Debian Alternatives,请参阅上面评论中的设置脚本。它很棒,只是有效,并提供以下好处:
update-alternatives --config
在它们之间轻松切换。与Java,Scala或任何其他sdk / platform相同。update-alternatives --config
轻松回滚到之前的工作版本。update-alternatives --remove-all
(包含脚本)和rm -rf /opt/haskell
。