小编Mik*_*yan的帖子

如何更改从/ usr/libexec/java_home返回的Mac OS默认Java VM

(不确定这是否应该继续使用SU ...迁移肯定是一种选择,但更多的程序员在这里阅读问题,所以这里也是如此).

我正在运行Mac OS X 10.8.4,我安装了Apple的JDK 1.6.0_51以及Oracle的JDK 1.7.0_25.我最近为一些需要它的预发布软件安装了Oracle的1.8预览JDK.现在,当我运行/ usr/libexec/java_home时,我得到了这个:

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (4):
    1.8.0, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
    1.7.0_25, x86_64:   "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
    1.6.0_51-b11-457, x86_64:   "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_51-b11-457, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)

大.

但是,运行:

$ java -version
Run Code Online (Sandbox Code Playgroud)

返回:

java version "1.8.0-ea"
Run Code Online (Sandbox Code Playgroud)

这意味着Java的默认版本目前是预发布版本,它打破了一些"普通"软件包(在我的情况下,VisualVM).

我无法设置,JAVA_HOME因为启动应用程序忽略环境变量,即使从命令行启动(例如$ open /Applications/VisualVM.app).

那么,是否有一个我可以编辑的文件,我可以在全局设置我的JVM订购首选项?

(请不要告诉我启动Java Preferences Panel,因为它根本不起作用:它不包含任何有用的东西,只列出我安装的4个JVM之一.)

更新:

Oracle JVM存在于/Library/Java/JavaVirtualMachines.重命名JDK 1.8目录jdk1.8.0.jvm.xyz不会改变任何东西:java_home仍然在正确的位置找到它,并且运行/ usr/bin/java仍然执行1.8 JVM.这不是synlinks等的问题.

类似问题的答案

虽然这个答案 …

java macos java-home

103
推荐指数
6
解决办法
12万
查看次数

如何使用Paramiko更改目录?

Drush命令没有使用Paramiko执行

我发布了上述有关使用Paramiko收到的持久性错误消息的问题.我不认为这与我的下一个问题有关,但可能是.

我可以使用Paramiko通过SSH成功​​连接到我的服务器.我可以执行像ls或pwd这样的命令.我似乎无法做的是更改目录.我可以发送命令"cd ..",但是当我跟进"pwd"时,它表明我没有更改目录.它只列出了我登录时的初始目录.

>>> stdin, stdout, stderr = myssh.exec_command("pwd")
>>> stdout.readlines()
['/big/dom/home/myid\n']
>>> stdin, stdout, stderr = myssh.exec_command("cd ../")
>>> stdout.readlines()
[]
>>> stdin, stdout, stderr = myssh.exec_command("pwd")
>>> stdout.readlines()
['/big/dom/home/myid\n']
>>>
Run Code Online (Sandbox Code Playgroud)

我误解了这里发生了什么吗?我应该无法更改目录吗?或者如果我可以,我应该以除了使用exec_command之外的其他方式来做这件事吗?

-

再过7个小时我无法回答我自己的问题,所以答案是:

这个家伙弄清楚了:http://www.vertigrated.com/blog/2010/02/python-remote-ssh-with-paramiko/

您只需使用一个exec_command发送多个命令,例如:

myssh.exec_command('cd ..; pwd')

然后stdout.readlines()将返回您更改的目录.

python unix paramiko

38
推荐指数
3
解决办法
2万
查看次数

标签 统计

java ×1

java-home ×1

macos ×1

paramiko ×1

python ×1

unix ×1