当前位置: 首页 > 知识库问答 >
问题:

如何让我的java编译器在UbuntuLinux上识别Java8的旧版本OpenJFX?

西门品
2023-03-14

我试图遵循这个解决方案,为什么JavaFX不包含在Ubuntu Wily(15.10)上的OpenJDK 8中?,但不幸的是已经过时了。我确实在这里找到了我认为需要的包openjfx:https://launchpad.net/~tj/归档/ubuntu/java-for-14.04

该软件包可以很好地安装在/usr/lib/jvm/java-8-openjdk-amd64/jre/lib下,我可以找到jfxswt。jar和jfxrt。扩展文件夹下的jar。问题是java编译器不知道它们在这里。我尝试通过javac-cp显式地指向它们的位置,并在.bashrc中声明类路径。在这两种情况下,我都这样声明它们:“.:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jfxswt.jar:/usr/lib.jvm/java8-openjdk-amd64/jre/lib/ext/jfxrt.jar”

编译时:javac-cp“.:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jfxswt.jar:/usr/lib.jvm/java8-openjdk-amd64/jre/lib/ext/jfxrt.jar”EventsDemo.java

终端输出:

事件演示。java:1:错误:打包javafx。应用程序不存在导入javafx.application.application;

所以简而言之,我认为类路径有问题,我想知道如何让编译器识别JavaFX。我希望我已经提供了足够的信息。我更喜欢不需要使用IDE的解决方案,因为我正在试图了解编译器如何处理这些事情。谢谢

共有1个答案

谢锦程
2023-03-14

所以,我最终找到了答案,我不应该使用openjdk-8。也许我可以,但是我找到了更好的方法是从甲骨文的网站下载Java8u201的版本。

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

此版本包含正确版本的JavaFX,我只是指出使用. bashrc进行此安装,JavaFX可以正常工作,没有任何类路径问题,这是应该的。

 类似资料:
  • 我是不是遗漏了什么,或者有什么特别的原因不起作用? 谢了!

  • 我向最初用Java编写的Android Studio项目添加了一个包含三个类的Kotlin文件。该文件在Android Studio中编译得很好,项目一直在构建,直到我尝试获得一个Java类来与Kotlin类交互为止。Android Studio给了我以下错误: 当我添加文件时,Android Studio抱怨gradle配置,但我运行配置,它说所有使用静态编程语言的模块都已配置。 请注意,我已经

  • 问题内容: 我想将我的.java(几个)编译成至少与Java 兼容的,较新的(最好是较新的)版本。(我有) 问题答案: 是的,您可以在编译时设置编译器的版本。并将您的Java代码编译为Java的旧版本。 从Oracle文章:http : //docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/javac.html 交叉编译示例 在这里,我们使用ja

  • 我想将我的.java(几个)编译成一个,该至少兼容和更新版本,最好是和更新版本的Java。(我有)

  • 我已经下载了OpenNLP工具,在为我的bash文件添加了正确的路径后,我能够让命令行工具运行,但我不知道如何让api文件与我的IDE(Netbeans)一起工作 对于命令行工具,我将指向/bin目录的路径。/lib目录中有四个jar文件:jwnl-1.3.3。jar,opennlp-maxent-3.0.3。jar,opennlp-tools-1.5.3。jar,opennlp-uima-1.5

  • 由于某种原因,maven在构建我的项目时自动选择java编译器1.5,尽管我安装了JDK1.8 步骤1 ,然后选择“工作区默认JRE(JDK1.8.0_102)”。 我在那个窗口中注意到的是:只有J2SE-1.x,其中x<=5 步骤3 然后转到`Project->Java Compiler,在这里我发现编译器遵从性级别设置为1.5(参见屏幕截图)。因此我将“编译器遵从级别更改为1.8”