linux - 在没有 super 用户权限的情况下,Scala shell 无法在 ubuntu 上运行

标签 linux scala path environment-variables superuser

我已经通过 apt 安装了 Scala,但是当我尝试运行 Scala shell 时,它会抛出一个 NoClassDefFoundError。当我尝试使用 super 用户权限运行它时,它运行良好。 Scalac 在没有 super 用户权限的情况下运行良好。 运行 env 命令后,我看到 SCALA_HOME 在那里,但没有列出 scala 的 PATH。我尝试通过 bashrcprofile/etc/environment 添加路径,但它没有添加到 PATH。 我的 SCALA_HOME/usr/share/scala 我的问题是: 如何在没有 superusr 权限的情况下执行 Scala shell?

EDIT1:在使用 SCALA_HOMEPATH 进行调整后,我的环境中不再有 SCALA_HOME

最佳答案

在我的 ubuntu 系统上(实际上是 lubuntu )我有以下内容。

/usr/bin 中的主要可执行文件应该已经在您的 $PATH 中。这是指向实际可执行文件的符号链接(symbolic link)。

0 lrwxrwxrwx 1 root root 26 Apr 13 01:24 /usr/bin/scala -> /usr/share/scala/bin/scala

真正的 scala 可执行文件是一个 bash 脚本。

8 -rwxr-xr-x 1 root root 6208 Apr 13 01:24 /usr/share/scala/bin/scala

注意每个文件的权限。

我没有在我的环境中设置 SCALA_HOME,因为 scala bash 脚本会自行计算来解决这个问题。

关于linux - 在没有 super 用户权限的情况下,Scala shell 无法在 ubuntu 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45931858/

相关文章:

java - 为什么 DistributedCache 会破坏我的文件名

linux - DSE Cassandra 4.8.4 不是有效的端口号

linux - 打印 zip 存档中多个文件的内容

linux - "command not found"但 "package is already the newest version"

scala 中的 java.util.Date 增量不一致

java - 生成的 JAR 和 EXE 的奇怪行为

linux - 使用 kill -9 杀死线程时发生了什么

scala - 运行 sbt 程序集时出错 : sbt deduplication error

scala - 编译期间未捕获异常: java. lang.AssertionError

Python os.path.relpath 行为