【问题标题】:How do I deploy an app with javafx keyboard?如何使用 javafx 键盘部署应用程序?
【发布时间】:2015-02-23 11:17:08
【问题描述】:

我已经使用 javafx 构建了一个应用程序。它被开发用于触摸屏。在我的虚拟机中,我指定了以下参数:

-Dcom.sun.javafx.isEmbedded=true -Dcom.sun.javafx.touch=true -Dcom.sun.javafx.virtualKeyboard=javafx

当我选择某种数据输入时,使用这个参数,javafx 数字键盘会弹出。

现在我想使用 maven 部署具有相同参数的应用程序。我该怎么做?

我尝试了以下 pom 定义(由 ItachiUchia 建议),但没有成功:

<plugin>
                <groupId>com.zenjava</groupId>
                <artifactId>javafx-maven-plugin</artifactId>
                <version>8.1.2</version>
                <configuration>
                    <mainClass>com.mycompany.app_name.Main</mainClass>
                    <jvmArgs>
                        <argument>-Dcom.sun.javafx.isEmbedded=true</argument>
                        <argument>-Dcom.sun.javafx.touch=true</argument>
                        <argument>-Dcom.sun.javafx.virtualKeyboard=javafx</argument>
                    </jvmArgs>
                </configuration>
            </plugin>

谢谢

【问题讨论】:

    标签: maven deployment javafx jvm-arguments


    【解决方案1】:

    您可以在 javafx-maven-plugin 的配置中使用 jvmArgs 传递 JVM 参数。一个简单的例子:

    <configuration>
        <jvmArgs>
            <argument>-Dcom.sun.javafx.isEmbedded=true</argument>
            <argument>-Dcom.sun.javafx.touch=true</argument>
            <argument>-Dcom.sun.javafx.virtualKeyboard=javafx</argument>
        </jvmArgs>
    </configuration>
    

    【讨论】:

    • 我试过你的建议,但没有运气。我已经更新了问题以反映您的答案。我做错什么了吗?
    • 你可以试试&lt;jvmArg&gt;-Dcom.sun.javafx.isEmbedded=true&lt;/jvmArg&gt;而不是&lt;argument&gt;-Dcom.sun.javafx.isEmbedded=true&lt;/argument&gt;
    • 您在创建原生构建吗?
    • 没有。我正在使用“mvn clean jfx:jar”。
    • 我自己没试过,但jvmArgs似乎只适用于jfx:native,不适用于jfx:jar
    猜你喜欢
    • 2021-02-25
    • 2021-06-27
    • 2021-02-22
    • 2015-12-20
    • 2018-05-18
    • 2010-12-27
    • 1970-01-01
    • 2019-04-26
    • 1970-01-01
    相关资源
    最近更新 更多