只能手动调用Pycharm.sh启动Pycharm

2024-10-02 22:31:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道为什么,但每次我尝试在进入工具后启动PyCharm->;创建桌面条目我得到以下信息

enter image description here

现在,正如我在一些类似问题中所看到的,我已经将JAVA_HOME和PYCHARM_JDK添加到了我的.zshrc文件中(我使用oh my zsh)

# This is for Pycharm
export JAVA_HOME="/home/internetmosquito/.sdkman/candidates/java/current"
export JDK_HOME="/home/internetmosquito/.sdkman/candidates/java/current"
export PYCHARM_JDK="/home/internetmosquito/.sdkman/candidates/java/current"

顺便说一句,如果你想知道.sdkman是什么,我用它来处理不同的Java版本,如果你检查它指向什么,它就是一个有效的Java安装

 internetmosquito@internetmosquito-PE72-7RD  ~  ls -ltra /home/internetmosquito/.sdkman/candidates/java
total 16
lrwxrwxrwx 1 internetmosquito internetmosquito   11 feb 10 20:24 current -> 11.0.2-open
drwxr-xr-x 9 internetmosquito internetmosquito 4096 feb 10 20:24 8u152-zulu
drwxr-xr-x 4 internetmosquito internetmosquito 4096 feb 10 20:24 .
drwxr-xr-x 8 internetmosquito internetmosquito 4096 feb 10 20:24 11.0.2-open
drwxr-xr-x 5 internetmosquito internetmosquito 4096 feb 10 20:24 ..
 internetmosquito@internetmosquito-PE72-7RD  ~  ls -ltra /home/internetmosquito/.sdkman/candidates/java/11.0.2-open 
total 36
drwxr-xr-x  4 internetmosquito internetmosquito 4096 feb 10 20:24 ..
drwxr-xr-x  3 internetmosquito internetmosquito 4096 feb 10 20:24 include
drwxr-xr-x  2 internetmosquito internetmosquito 4096 feb 10 20:24 bin
drwxr-xr-x  6 internetmosquito internetmosquito 4096 feb 10 20:24 lib
-rw-r--r--  1 internetmosquito internetmosquito 1214 feb 10 20:24 release
drwxr-xr-x  2 internetmosquito internetmosquito 4096 feb 10 20:24 jmods
drwxr-xr-x 72 internetmosquito internetmosquito 4096 feb 10 20:24 legal
drwxr-xr-x  8 internetmosquito internetmosquito 4096 feb 10 20:24 .
drwxr-xr-x  4 internetmosquito internetmosquito 4096 feb 10 20:24 conf

所以,如果我尝试回显Pycharm正在寻找的任何变量,我会得到合法的输出

 internetmosquito@internetmosquito-PE72-7RD  ~  echo $JAVA_HOME
/home/internetmosquito/.sdkman/candidates/java/current
 internetmosquito@internetmosquito-PE72-7RD  ~  echo $JDK_HOME
/home/internetmosquito/.sdkman/candidates/java/current
 internetmosquito@internetmosquito-PE72-7RD  ~  echo $PYCHARM_JDK
/home/internetmosquito/.sdkman/candidates/java/current

显然,java工作得很好

 ✘ internetmosquito@internetmosquito-PE72-7RD  ~/Downloads/pycharm-2019.1/bin  java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

有趣的是,若我在终端中手动运行pycharm.sh,一切都会正常运行

internetmosquito@internetmosquito-PE72-7RD  ~/Downloads/pycharm-2019.1/bin  ./pycharm.sh 
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.intellij.util.ReflectionUtil to field sun.awt.X11.XToolkit.awtAppClassName
WARNING: Please consider reporting this to the maintainers of com.intellij.util.ReflectionUtil
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
2021-02-14 21:47:41,590 [   1332]   WARN - llij.ide.plugins.PluginManager - Plugin "Markdown support" is incompatible (until build 173.SNAPSHOT < PY-193.7288.30) 
2021-02-14 21:47:41,986 [   1728]   WARN - llij.ide.plugins.PluginManager - Plugin "Markdown support" is incompatible (until build 173.SNAPSHOT < PY-193.7288.30) 
2021-02-14 21:47:42,469 [   2211]   WARN - com.intellij.ide.ui.LafManager - List.rowHeight = 0 in Darcula; it may lead to performance degradation 
2021-02-14 21:47:42,473 [   2215]   WARN - com.intellij.ide.ui.LafManager - Table.rowHeight = 0 in Darcula; it may lead to performance degradation 
2021-02-14 21:47:42,473 [   2215]   WARN - com.intellij.ide.ui.LafManager - Tree.rowHeight = 0 in Darcula; it may lead to performance degradation 
2021-02-14 21:47:42,535 [   2277]   WARN - s.impl.EditorColorsManagerImpl - Cannot find scheme: VibrantInk from plugins: com.intellij.database

所以…我的看法是,无论何时我从桌面条目运行它,出于某种原因,它都无法获取我的env变量?有什么建议吗?不确定这是否与sdkman有关,但我在过去的工作中与它共存,没有任何问题


Tags: toincomhomejavacurrentfebwarn
1条回答
网友
1楼 · 发布于 2024-10-02 22:31:41

在尝试了几个选项后,我补充说

export JAVA_HOME="/home/internetmosquito/.sdkman/candidates/java/current"
export JDK_HOME="/home/internetmosquito/.sdkman/candidates/java/current"
export PYCHARM_JDK="/home/internetmosquito/.sdkman/candidates/java/current"

到/etc/environment,它最终成功了。我将对此进行一些改进,因为这基本上意味着,如果我卸载sdkman,我将无法重新开始,但现在已经足够了

相关问题 更多 >