【问题标题】:How do I create a basic HelloWorld JavaFX app in Gitpod如何在 Gitpod 中创建基本的 HelloWorld JavaFX 应用程序
【发布时间】:2020-03-09 19:47:36
【问题描述】:

我想使用 Gitpod 开发基本的 javaFX 应用程序。我尝试了许多不同的配置,但没有任何效果。这是 github 上的一个示例 repo https://gitpod.io/#https://github.com/RohitAwate/Everest 这个例子非常复杂。我只想要一个带有几个按钮和文本框的基本应用程序。

【问题讨论】:

  • 在问这些问题之前,你应该做一些研究。或者至少显示你尝试过的东西和/或你收到的错误。
  • 注明。我对此很陌生。未来,我要做一个好男人,彻底!

标签: java github javafx novnc gitpod


【解决方案1】:

您可以在此处找到 Everest 项目的配置

https://github.com/gitpod-io/definitely-gp/tree/master/Everest

只需将这两个文件复制到您的简单示例的根目录中,提交并启动一个新的工作区。

【讨论】:

    【解决方案2】:

    要开始使用 JavaFX,您应该在 GitHub 上搜索 Hello World 示例。例如,试试我在 Google 搜索中找到的这个:https://github.com/callicoder/javafx-examples/

    1. 在 Gitpod 中打开存储库:https://gitpod.io/#https://github.com/callicoder/javafx-examples/
    2. 在终端输入:gp init
    3. Gitpod 打开两个新编辑器:一个用于编辑.gitpod.yml,另一个用于编辑.gitpod.Dockerfile。我在下面添加了基于Everest 的示例。
    4. 分叉此存储库并提交+推送更改。
    5. 在 Gitpod 中打开你的 fork。
    6. 出现一个通知,表明端口 6080 已打开。点击“打开浏览器”。一个带有 VNC 的新浏览器选项卡打开。
    7. 在 Gitpod 的终端中运行 cd javafx-hello-world/src && javac HelloWorldApplication.java && java HelloWorldApplication
    8. 更改为 VNC 浏览器选项卡。带有 Hello World 消息的示例窗口已打开。

    样本.gitpod.yml:

    image:
      file: .gitpod.Dockerfile
    
    ports:
    - port: 6080
    

    示例.gitpod.Dockerfile:

    FROM gitpod/workspace-full-vnc
    
    RUN apt-get update \
        && apt-get install -y openjfx libopenjfx-java matchbox \
        && apt-get clean && rm -rf /var/cache/apt/* && rm -rf /var/lib/apt/lists/* && rm -rf /tmp/*
    

    【讨论】:

    • 这仍然没有为我显示 GUI。我已经更新了第 7 步中的命令。cd javafx-hello-world/src/ && javac HelloWorldApplication.java && java HelloWorldApplication 它可以编译,但运行时出现错误:sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 处的线程“main”java.lang.reflect.InvocationTargetException 中的异常。反射.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.refle
    • 第 6 步的通知出现了吗,您是否能够在新浏览器中打开 noVNC 选项卡(第 7 步之前)?
    • 我不确定这是否需要一个新问题,但我想修复 Gitpod 上的 JavaFX GUI 显示有两个问题。 1、JavaFX阶段没有出现。我期待这个docs.oracle.com/javafx/2/get_started/img/helloworld.png 但我错过了带有最小化和 X 按钮的 GUI 的蓝色外缘。我认为这与我们在 Dockerfile 中的火柴盒窗口管理器软件有关。我将其更改为 Openbox,但我仍然遇到同样的问题。 2. JavaFX GUI 位于浏览器窗口的中心。如何让它出现在左上角?
    • 正如您所提到的,“窗口管理器”对此负责。您将在此处找到 Gitpod 的 VNC 工作区的 Windows 管理器配置:github.com/gitpod-io/workspace-images/tree/master/full-vnc。基于此,您可以安装自己的窗口管理器来满足您的需求。但是,这与 Gitpod 无关,目前我无法为您提供帮助。如果您知道要使用哪个窗口管理器以及如何配置它,但在 Gitpod 中运行它仍然存在问题,我很乐意为您提供帮助。
    猜你喜欢
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多