小编Nee*_*rma的帖子

从javafx平台runlater返回结果

我正在研究JavaFX应用程序,在我的场景中是显示在JavaFX中创建的密码提示,它带有两个选项的密码OKCancel.我已经返回了用户输入的密码.

我的密码对话框是 -

public static String showPasswordDialog(String title, String message, Stage parentStage, double w, double h) {
    try {
        Stage stage = new Stage();
        PasswordDialogController controller = (PasswordDialogController) Utility.replaceScene("Password.fxml", stage);
        passwordDialogController.init(stage, message, "/images/password.png");
        if (parentStage != null) {
            stage.initOwner(parentStage);
        }
        stage.initModality(Modality.WINDOW_MODAL);
        stage.initStyle(StageStyle.UTILITY);
        stage.setResizable(false);
        stage.setWidth(w);
        stage.setHeight(h);                
        stage.showAndWait();
        return controller.getPassword(); 
    } catch (Exception ex) {
         return null;
    }
Run Code Online (Sandbox Code Playgroud)

我的代码显示密码提示的位置如下,实际上这个提示将显示在其他UI上,所以我需要将其包含在内部Platform.runlater(),否则它会抛出Not on FX application thread.我需要这个密码提示才能显示,直到我得到正确的密码提示.如果我在runlater中显示密码,我怎样才能获得密码值.

还有其他更好的方法吗?

final String sPassword = null;

          do {
            Platform.runLater(new Runnable() { …
Run Code Online (Sandbox Code Playgroud)

javafx javafx-2

15
推荐指数
2
解决办法
1万
查看次数

无法使用本机捆绑包exe启动JavaFX应用程序

我创建了一个JavaFX应用程序,并使用Ant创建了它的本机包.当我尝试使用双击创建的包中的Jar启动应用程序时,它成功启动了我的应用程序.但是,当我尝试双击MyApplication.exe(比如说)时,它会抛出JavaFX Launcher Error"运行Application时出现异常".

我比较了两个jre,有很多缺少jar,exe,dll和我发现的一些属性文件.

我有这些环境设置 -

JAVA_HOME -- C:\Program Files\Java\jdk1.7.0_10
JREFX_HOME -- C:\Program Files\Oracle\JavaFX 2.2 Runtime
Path contains an entry of C:\Program Files\Java\jdk1.7.0_10\bin
Run Code Online (Sandbox Code Playgroud)

在我的build.xml中使用JAVA_HOME和JREFX_HOME来获取ant-javafx.jar和jfxrt.jar -

${env.JAVA_HOME}/lib/ant-javafx.jar
${env.JREFX_HOME}/lib/jfxrt.jar
Run Code Online (Sandbox Code Playgroud)

我创建包的步骤是 -

<target name="CreatingExe" depends="SignedJar">
            <fx:deploy width="800" height="600" nativeBundles="all" outdir="${OutputPath}" outfile="${app.name}">
                <fx:info title="${app.title}"/>
                    <fx:application name="${app.title}" mainClass="${main.class}"/>
                    <fx:resources>
                        <fx:fileset dir="${OutputPath}" includes="*.jar"/>
                <fx:fileset dir="${WorkingFolder}/temp"/>
            </fx:resources>
         </fx:deploy>
 </target>
Run Code Online (Sandbox Code Playgroud)

build.xml中还需要什么才能使应用程序正确启动exe?

谢谢

java ant deployment bundle javafx-2

8
推荐指数
1
解决办法
7704
查看次数

JfileChooser忽略OS X上的特殊字符文件夹

我有一个Java程序浏览本地文件系统的路径,为此我们使用了JFileChooser.如果文件夹名称是简单的英语在Windows,Mac OS X和Linux上正常工作.但是,如果我创建名为特殊字符的文件夹,例如 - ábcEóz,那么它仅在Windows和Linux上显示特殊字符名称,但在OS XI上无法看到那些特殊字符文件夹.它从文件夹列表中忽略它们.

我的程序基于java 7更新21. Mac OS X版本 - 10.8.2

我该如何解决这个问题?

谢谢

更新:我们正在使用JavaFX打包为Mac创建一个应用程序.当我们直接运行app.jar时,它会显示包含特殊字符的路径.但是如果我们尝试使用app启动应用程序,那么它会跳过那些特殊的char文件夹.

java macos jfilechooser javafx

8
推荐指数
1
解决办法
446
查看次数

在Mac OS X上运行.jar文件的脚本

我想在Mac OS X上运行批处理文件(类似于Windows)来运行jar文件,搜索后我发现它运行批处理脚本.

我没有得到正确的链接,我可以从哪里获得帮助.我该如何创建呢?

java macos batch-file

6
推荐指数
1
解决办法
4万
查看次数

如何在ant copy任务中保留exec文件

我使用Ant为Mac OS X创建了Java FX软件包.它创建包含两个文件的包 - 1. MyApplication.app 2. MyApplication.dmg

我希望将这两个文件复制到其他文件夹中,所以我在build.xml中编写了命令 -

<copy todir="my_new_folder">
   <fileset dir="old_folder\bundles"/>
</copy>
Run Code Online (Sandbox Code Playgroud)

它在"my_new_folder"处成功复制了两个文件.但是从"my_new_folder"运行.app并没有启动我的应用程序虽然它正在从"old_folder"正确启动.

在比较复制的应用程序时,我发现exec(Unix可执行文件)驻留在MacOS文件夹("显示包内容/内容/ MacOS")不保留,其类型在文档文件中发生了变化.

如何保存它对Unix可执行文件的类型,因为我只是执行简单的复制目录.

谢谢,Neelam Sharma

ant macos file-copying

6
推荐指数
1
解决办法
4660
查看次数

commondatastorage v/s存储请求端点

要共享Google云端存储对象,我们有此API请求 -

http://neelam-sharma.storage.googleapis.com/test.html

此前请求的终点是commondatastorage -

http://neelam-sharma.commondatastorage.googleapis.com/test.html

这两个请求都正常,您是否将所有请求从commondatastorage重定向到存储端点?

通过这种类型的URL访问对象的最佳方法是什么?这两个网址之间有什么区别?

google-cloud-storage google-cloud-endpoints

6
推荐指数
1
解决办法
3240
查看次数

循环引用的 Spring Boot 集成测试错误:io.zonky.test.db.provider.ProviderException

我正在开发 Spring Boot 应用程序,其中包含用于检查功能的单元和集成测试用例。

Docker 与 Podman 一起运行并且工作正常。

我正在使用在我的计算机上配置的 POSTGRES 数据库服务器。但是在运行集成测试时,测试被忽略并出现错误:CIRCULAR REFERENCE:io.zonky.test.db.provider.ProviderException:准备数据库集群时出现意外错误;嵌套异常是 java.lang.IllegalStateException: 找不到有效的 Docker 环境。请查看日志并检查配置

详细的堆栈跟踪:

java.lang.IllegalStateException: Failed to load ApplicationContext

    at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132)
    at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:123)
    at io.zonky.test.db.EmbeddedDatabaseTestExecutionListener.forEachDatabase(EmbeddedDatabaseTestExecutionListener.java:90)
    at io.zonky.test.db.EmbeddedDatabaseTestExecutionListener.resetDatabases(EmbeddedDatabaseTestExecutionListener.java:58)
    at io.zonky.test.db.EmbeddedDatabaseTestExecutionListener.beforeTestClass(EmbeddedDatabaseTestExecutionListener.java:34)
    at org.springframework.test.context.TestContextManager.beforeTestClass(TestContextManager.java:213)
    at org.springframework.test.context.junit.jupiter.SpringExtension.beforeAll(SpringExtension.java:77)
    at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeBeforeAllCallbacks$7(ClassBasedTestDescriptor.java:355)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeBeforeAllCallbacks(ClassBasedTestDescriptor.java:355)
    at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.before(ClassBasedTestDescriptor.java:189)
    at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.before(ClassBasedTestDescriptor.java:77)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:132)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
    at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:80)
    at java.base/java.util.ArrayList.forEach(ArrayList.java:1541)
    at org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:38)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$5(NodeTestTask.java:139)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$7(NodeTestTask.java:125)
    at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:135)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:123)
    at org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
    at org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:122) …
Run Code Online (Sandbox Code Playgroud)

postgresql integration-testing docker spring-boot

6
推荐指数
1
解决办法
5132
查看次数

JavaFX捆绑包exe不显示TableView内容

我们创建了一个JavaFX应用程序,其中包含许多用于显示数据的TableView。我们已经使用Ant构建了本地包,并且正在使用Proguard-4.8对 jar 进行模糊处理,并且 能够使用该经过混淆的jar成功创建本地bundle exe。当我们运行exe时,它成功启动了应用程序,一切正常,数据存在于tableView中,但是我们无法在TableView中看到数据。在exe的TableView截屏下方附有-

注意:我们可以使用创建的jar和exe来查看TableView中的数据,而不会混淆。

表格检视

在build.xml中混淆jar的步骤

<target name="ObfuscatingProject" depends="apidocs">

            <taskdef resource="proguard/ant/task.properties" classpath="${WorkingFolder}/proguard.jar" />
            <proguard>
                -dontusemixedcaseclassnames
                -printmapping Project_Proguard.map
                -dontshrink
                -dontoptimize
                -dontskipnonpubliclibraryclasses
                -dontskipnonpubliclibraryclassmembers

                -libraryjars "${java.home}/lib/rt.jar"
                -libraryjars "${java.home}/lib/javaws.jar"
                -libraryjars "${env.JAVA_HOME}/lib/ant-javafx.jar"
                -libraryjars "${env.JAVA_HOME}/jre/lib/jfxrt.jar"           
                -libraryjars ${WorkingFolder}/libs/BareBonesBrowserLaunch.jar
                -libraryjars ${WorkingFolder}/libs/activation.jar
                -libraryjars ${WorkingFolder}/libs/log4j-1.2.16.jar
                -libraryjars ${WorkingFolder}/libs/commons-codec-1.5.jar
                -libraryjars ${WorkingFolder}/libs/commons-httpclient-3.1.jar
                -libraryjars ${WorkingFolder}/libs/commons-logging-1.1.1.jar
                -libraryjars ${WorkingFolder}/libs/commons-io-2.0.1.jar
                -libraryjars ${WorkingFolder}/libs/xercesImpl-2.9.1.jar
                -libraryjars ${WorkingFolder}/libs/javax.mail.jar
                -libraryjars ${WorkingFolder}/libs/balloontip-1.2.1.jar
                -libraryjars ${WorkingFolder}/libs/httpclient-4.1.1.jar
                -libraryjars ${WorkingFolder}/libs/httpcore-4.1.3.jar
                -libraryjars ${WorkingFolder}/libs/jcifs-1.3.16.jar         
                -libraryjars ${WorkingFolder}/libs/proguard-4.8.jar
                -libraryjars ${WorkingFolder}/libs/xml-apis-1.3.04.jar
                -libraryjars ${WorkingFolder}/libs/swingx-1.6.jar
                -libraryjars ${WorkingFolder}/libs/derby.jar


                -injars ${WorkingFolder}/${app.name}.jar
                -injars ${WorkingFolder}/CustomJars/LicVerifier.jar(!META-INF/MANIFEST.MF)
                -injars ${WorkingFolder}/CustomJars/LicUtility.jar(!META-INF/MANIFEST.MF)


                -outjars ${WorkingFolder}/ObfuscatedProjectJar/ProjectObfuscated.jar

                -ignorewarnings …
Run Code Online (Sandbox Code Playgroud)

java javafx native proguard tableview

5
推荐指数
1
解决办法
440
查看次数

如何检查app或dmg是否已签名?

我已经为Java应用程序创建了app和dmg.我正在签署以及通过codesign验证dmg和app.

codesign -s"mycomapany name"myproduct.dmg/myproduct.app

使用以下命令验证两者 -

codesign -v myproduct.dmg/myproduct.app

在单独为app和dmg执行此命令时,它没有给出任何消息来确认它们是否已签名?

就像执行命令一样 - jarsigner -verify -certs myproduct.jar返回" jar验证".

如何验证dmg和app是否已正确签名.

谢谢

java codesign

3
推荐指数
1
解决办法
2368
查看次数

ORA-19602:无法在NOARCHIVELOG模式下备份或复制活动文件

我们正在使用Oracle 11gWindows 8和10 OS环境中的数据库.我们需要转储(备份)数据库,然后将该转储文件恢复到另一个oracle数据库,所以我们正在尝试Recovery Manager (RMAN)它.我们发出以下命令:

C:\Users\Admin>rman
Recovery Manager: Release 11.2.0.1.0 - Production on Tue Mar 8 17:24:43 2016
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
RMAN> connect target /
connected to target database: MYEMP (DBID=42934358)
RMAN> backup database;

Starting backup at 08-MAR-16
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=133 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in …
Run Code Online (Sandbox Code Playgroud)

database oracle oracle11g database-backups

3
推荐指数
2
解决办法
1万
查看次数