我正在尝试在 docker 映像中安装 java7。这一直工作到几天前。命令是:
apt-get --fix-missing update
apt-get -y upgrade
apt-get -y install software-properties-common
add-apt-repository ppa:webupd8team/java
apt-get -y upgrade
apt-get -y update
echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
apt-get install -y oracle-java7-installer
Run Code Online (Sandbox Code Playgroud)
输出是:
Setting up oracle-java7-installer (7u80+7u60arm-0~webupd8~1) ...
debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (This frontend requires a controlling tty.)
debconf: falling back to …
Run Code Online (Sandbox Code Playgroud) 我看到很多博客说 Java 8 现在可以通过 ppa openjdk-r 用于 Ubuntu 12.04 和 14.04。我的问题是这个 ppa 有多值得信赖?它是由来自 openjdk 或 ubuntu 之类的人运行的,还是只是一些随机的家伙?
我没有在我的 Ubuntu 16.04 服务器中安装任何奇怪的东西。几个小时前,我在我的 Ubuntu 16.04 桌面虚拟机上进行了一些测试,安装成功,但在我的专用环境中,似乎出了点问题。
解释:
我在我的专用操作系统上重新安装了操作系统,从 Windows 到 Linux (Ubuntu Server 16.04)
第一次打开SSH,我去
sudo apt-get update
sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud)然后我尝试安装 Oracle Java 8
$ sudo add-apt-repository ppa:webupd8team/java
Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK7 /
Important -> Why Oracle Java 7 And 6 Installers No Longer Work: http://www.webup
Ubuntu 16.10 Yakkety Yak is no longer supported by Canonical (and thus, Launchpad)
More info (and Ubuntu installation instructions):
- for Oracle Java 7: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in
- …
Run Code Online (Sandbox Code Playgroud)在全新的 Ubuntu 18.04 安装和 netbeans 安装之后,netbeans 不会启动。netbeans 已安装
sudo apt install netbeans
Run Code Online (Sandbox Code Playgroud)
其他一些 Java 程序(至少是 Eclipse)也无法启动。
从命令行启动 netbeans 时,JVM 会打印以下警告:
? ~ netbeans
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.netbeans.ProxyURLStreamHandlerFactory (file:/usr/share/netbeans/platform18/lib/boot.jar) to field java.net.URL.handler
WARNING: Please consider reporting this to the maintainers of org.netbeans.ProxyURLStreamHandlerFactory
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
? ~
Run Code Online (Sandbox Code Playgroud) 我正在使用 IntelliJ IDEA,它是一个 Java 应用程序。当它运行(通过 Dash 调用)时,它会显示一个没有名称的启动器图标。我已经尝试过多次右键单击并选择“保留在启动器中”,但没有成功 - 每次关闭它时,启动器图标都会消失。我尝试使用 MyUnity 来解决这个问题,但它也失败了。我不介意手动破解这个,但我不知道启动器配置存储在哪里或做什么。
相关的桌面文件如下所示,它与破折号完美配合。
[Desktop Entry]
Type=Application
Name=IntelliJ IDEA
Comment=IntelliJ Integrated Development Environment
Icon=/opt/IntelliJ-IDEA-11/bin/idea48.png
Exec=/opt/IntelliJ-IDEA-11/bin/idea.sh
Terminal=false
StartupWMClass=Intellij_IDEA
Categories=Development;IDE;Java;
Run Code Online (Sandbox Code Playgroud) 我昨天升级到 12.04 测试版。现在,当我尝试启动 Eclipse 时,出现启动画面,然后出现此错误消息:
An error has occurred. See the log file /home/gabriel/.eclipse/org.eclipse.platform_3.7.0_155965261/configuration/1335382319394.log .
Run Code Online (Sandbox Code Playgroud)
日志文件是这样写的:
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:
no swt-gtk-3740 in java.library.path
no swt-gtk in java.library.path
Can't load library: /home/gabriel/.swt/lib/linux/x86_64/libswt-gtk-3740.so
Can't load library: /home/gabriel/.swt/lib/linux/x86_64/libswt-gtk.so
Run Code Online (Sandbox Code Playgroud)
其次是更多的错误消息。
该/home/gabriel/.swt/lib/linux/x86_64/
目录存在,但为空。我也尝试重新安装 eclipse 没有成功。
有任何想法吗?
我已经安装了 OpenJDK 6 和 7。当我从命令行运行“java somefile”时,会调用 OpenJDK 6。我不想更改此默认行为。我可以使用什么命令来运行我的非默认 OpenJDK 7 安装?
(我习惯于运行“python somefile”来调用默认的Python,“python2.7 somefile”来专门使用Python 2.7,“python3 somefile”来专门使用Python 3。)
我最近才在wiki页面上发现了不同的 JVM,并认为我会开始修补。但是,很难找到有关如何在 Ubuntu 上配置 Java 的文档。
假设我想更改我正在使用的 JRE 或 JDK,我可以打开一个终端并说
sudo update-alternatives --config java
Run Code Online (Sandbox Code Playgroud)
然后从已安装的版本之一中进行选择。
如果我理解 JVM 是正确的(我很可能不是),您可以将 openJDK 配置为使用替代 JVM(例如 JAMVM)并以此方式运行它
jamvm -jar foo.jar
Run Code Online (Sandbox Code Playgroud)
2个问题,
1:我有 JVM 的概念吗?就像,这可能吗?
2:如果是这样,我如何配置 JVM 并将默认值切换到我选择的 JVM?
使用 webupd8 ppa 安装了 Oracle Java,需要调整一些策略设置(专门访问剪贴板)
webUpd8 插件:http : //www.webupd8.org/2011/09/how-to-install-oracle-java-7-jdk-in.html
(这些家伙为 Ubuntu 社区做了很多工作)
以前是在 /etc/java-6-oracle
谷歌对此没有任何答案 - 有什么想法吗?
我知道这export CLASSPATH=/usr/local/java/tools.jar:$CLASSPATH
会将 tools.jar 添加到 CLASSPATH,但我想将文件夹设置为 CLASSPATH
像这样
export CLASSPATH=/usr/local/java/lib/:$CLASSPATH
Run Code Online (Sandbox Code Playgroud)
但它不工作。