Java:符号查找错误:/snap/core20/current/lib/x86_64-linux-gnu/libpth



我一直在开发一个Java项目,该项目使用gui.jar文件导入一些类。一切都很好,直到昨天。现在,我可以通过命令

编译.class文件javac -d ./bin -sourcepath ./src -classpath ./bin/gui.jar src/simulation/TestSimulateur.javac

但是当我尝试用

执行程序时java -classpath bin:bin/gui.jar simulation.TestSimulateur

我得到错误

java: symbol lookup error: /snap/core20/current/lib/x86_64-linux-gnu/libpthread.so.0: undefined symbol: __libc_pthread_init, version GLIBC_PRIVATE make: *** [Makefile:47: carte1] Error 127

我不太了解snap和库是如何工作的,所以我不确定问题的根源。奇怪的是,只有当我在VSCode上运行它时才会出现问题,而如果我在正常的Linux终端上运行它,它就会正常工作。

我已经找了很多,但找不到解决这个问题的方法。正如我所说,我是Linux系统的新手。在我的尝试之间,我试图重新安装VSCode,更新系统和更新snap包,但这些都不起作用。

虽然我已经在这里回答过了

关于如何配置VSCode Snap包库以使用的问题。他们正在设置以下环境变量GTK_PATH,该变量由VSCode终端继承。

在VSCode终端中取消环境变量似乎对我有用。

unset GTK_PATH

作为一个稍微永久的解决方案,你也可以在VS Code用户设置中取消设置GTK_PATH,运行"Preferences: Open user settings (JSON)"并将其添加到settings.json:

"terminal.integrated.env.linux": {
"GTK_PATH": ""
}

我在最近的ubuntu更新后也遇到了这个错误。我认为这与snap和vscode有关。

一个简单的解决方案是用 卸载vscode
sudo snap remove code

然后,使用https://code.visualstudio.com/docs/setup/linux

所示的apt安装vscode
sudo apt install ./<file>.deb

相关内容

最新更新