From 0d254765e0b6e360aa80ff765aebbb2bbaf7593d Mon Sep 17 00:00:00 2001 From: iammmmmmm <2946649116@qq.com> Date: Thu, 12 Sep 2024 21:12:44 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9Aalert=E5=BC=B9=E5=87=BA=E5=90=8E?= =?UTF-8?q?=E4=BA=8B=E4=BB=B6=E5=BE=AA=E7=8E=AF=E7=B3=BB=E7=BB=9F=E5=9C=A8?= =?UTF-8?q?=E5=AE=89=E5=8D=93=E4=B8=8A=E5=BC=82=E5=B8=B8=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E8=BE=93=E5=85=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/compiler.xml | 5 + readme.md | 22 +- src/main/java/caidanci/HelloApplication.java | 5 +- src/main/java/caidanci/HelloController.java | 73 ++- .../META-INF/native-image/filter-file.json | 11 - .../META-INF/native-image/jni-config.json | 356 ------------ .../predefined-classes-config.json | 8 - .../META-INF/native-image/proxy-config.json | 2 - .../META-INF/native-image/reflect-config.json | 507 ------------------ .../native-image/resource-config.json | 57 -- .../native-image/serialization-config.json | 6 - src/main/resources/caidanci/hello-view.fxml | 2 - 12 files changed, 54 insertions(+), 1000 deletions(-) delete mode 100644 src/main/resources/META-INF/native-image/filter-file.json delete mode 100644 src/main/resources/META-INF/native-image/jni-config.json delete mode 100644 src/main/resources/META-INF/native-image/predefined-classes-config.json delete mode 100644 src/main/resources/META-INF/native-image/proxy-config.json delete mode 100644 src/main/resources/META-INF/native-image/reflect-config.json delete mode 100644 src/main/resources/META-INF/native-image/resource-config.json delete mode 100644 src/main/resources/META-INF/native-image/serialization-config.json diff --git a/.idea/compiler.xml b/.idea/compiler.xml index a461793..c42755b 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -14,4 +14,9 @@ + + + \ No newline at end of file diff --git a/readme.md b/readme.md index 687aa0d..0b6867e 100644 --- a/readme.md +++ b/readme.md @@ -11,7 +11,7 @@ 安卓平台目前无法正常使用存在一下问题: 1. ~~中文字体缺失~~(2024.08.26解决) -2. 文本输入组件不能正常输入 +2. ~~文本输入组件不能正常输入~~(2024.09.12解决) ### TODOList: @@ -21,18 +21,20 @@ 2. ~~实现读取系统字体~~(2024.09.04) 3. 有生之年或作为独立模块开发 4. 解决只能在windows上表现正常的问题 - 1. linux - 1. 布局错误 + 1. ~~linux~~ + 1. ~~布局错误~~ 2. 安卓 1. 布局错误 - 2. 无法正常操作 + 2. 字体选择框无法正常操作 1. 只能点一下弹出,然后只能上下滑动或者点击选一个 -2. 修复安卓平台上文本输入组件不能正常输入 - 1. 仍未有思路 - 1. 不使用gluon的那套需要授权的移动组件库(必须) - 2. 不使用嵌套webview的方式 -3. 解决ui布局问题 - 1. ui布局存在问题,不应使用硬编码设置布局,应调整设置为居中 + 3. alert和字体选择框弹出内容的位置都是左上角(0,0) +2. ~~修复安卓平台上文本输入组件不能正常输入~~ + 1. ~~仍未有思路~~ + 1. ~~不使用gluon的那套需要授权的移动组件库(必须)~~ + 2. ~~不使用嵌套webview的方式~~~~ + 3. 解决办法:通过initOwner方法设定alert和主stage之间的关系进而使alert关闭时正确处理事件循环 +3. ~~解决ui布局问题~~ + 1. ~~ui布局存在问题,不应使用硬编码设置布局,应调整设置为居中~~ 4. 增加GitHubAction自动打包 5. 既然有数据库那就增加: 1. 统计系统 diff --git a/src/main/java/caidanci/HelloApplication.java b/src/main/java/caidanci/HelloApplication.java index 100842f..17898af 100644 --- a/src/main/java/caidanci/HelloApplication.java +++ b/src/main/java/caidanci/HelloApplication.java @@ -17,16 +17,15 @@ public static void main(String[] args) { @Override public void start(Stage stage) throws IOException { FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("hello-view.fxml")); - var size = tools.screenAutoSize(330, 600); + var size = tools.screenAutoSize(440, 800); Parent root = fxmlLoader.load(); Scene scene = new Scene(root, size[0], size[1]); var tm = ThemeManager.getInstance(); tm.addScene(scene); - + stage.setScene(scene); stage.setTitle("Hello!"); stage.setResizable(false); - stage.setScene(scene); stage.show(); } } \ No newline at end of file diff --git a/src/main/java/caidanci/HelloController.java b/src/main/java/caidanci/HelloController.java index cd5ff67..45f07c3 100644 --- a/src/main/java/caidanci/HelloController.java +++ b/src/main/java/caidanci/HelloController.java @@ -84,7 +84,6 @@ void inputFiledKeyRelease(KeyEvent event) { } } - /** * 处理输入按钮点击事件 */ @@ -97,40 +96,38 @@ void inputButtonClicked() { } private void inputCheck(String inputText) { - Platform.runLater(() -> { - if (inputText.isEmpty()) { - return; - } - if (inputText.length() != wordLength) { - showAlert(Alert.AlertType.WARNING, "错误!", "输入格式错误!", "你应该输入一个单词,且该单词长度为" + wordLength + "!"); - return; - } - if (!checkWord(inputText)) { - showAlert(Alert.AlertType.ERROR, "错误!", "输入的单词错误!", "应该输入一个正确的单词"); - return; - } - if (inputTime == 0) { - showAlert(Alert.AlertType.INFORMATION, "不,你失败了!", "你耗尽了机会!", "答案:" + answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); - startGame(); - return; - } - if (wordList.contains(inputText)) { - showAlert(Alert.AlertType.WARNING, "不", "你已经猜过这个单词了!", inputText + " :\n" + sqlTools.getWordInfo(inputText)); - inputTextFiled.clear(); - return; - } - inputTime--; - wordList.add(inputText); - refresh(inputText); - if (inputText.equals(answerWord)) { - showAlert(Alert.AlertType.INFORMATION, "胜利!", "恭喜你,成功猜出单词!", answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); - startGame(); - } - if (inputTime == 0) { - showAlert(Alert.AlertType.INFORMATION, "不,你失败了!", "你耗尽了机会!", "答案:" + answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); - startGame(); - } - }); + if (inputText.isEmpty()) { + return; + } + if (inputText.length() != wordLength) { + showAlert(Alert.AlertType.WARNING, "错误!", "输入格式错误!", "你应该输入一个单词,且该单词长度为" + wordLength + "!"); + return; + } + if (!checkWord(inputText)) { + showAlert(Alert.AlertType.ERROR, "错误!", "输入的单词错误!", "应该输入一个正确的单词"); + return; + } + if (inputTime == 0) { + showAlert(Alert.AlertType.INFORMATION, "不,你失败了!", "你耗尽了机会!", "答案:" + answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); + startGame(); + return; + } + if (wordList.contains(inputText)) { + showAlert(Alert.AlertType.WARNING, "不", "你已经猜过这个单词了!", inputText + " :\n" + sqlTools.getWordInfo(inputText)); + inputTextFiled.clear(); + return; + } + inputTime--; + wordList.add(inputText); + refresh(inputText); + if (inputText.equals(answerWord)) { + showAlert(Alert.AlertType.INFORMATION, "胜利!", "恭喜你,成功猜出单词!", answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); + startGame(); + } + if (inputTime == 0) { + showAlert(Alert.AlertType.INFORMATION, "不,你失败了!", "你耗尽了机会!", "答案:" + answerWord + " :\n" + sqlTools.getWordInfo(answerWord)); + startGame(); + } } /** @@ -169,10 +166,10 @@ private boolean checkWord(String word) { */ @FXML void initialize() { - Application.setUserAgentStylesheet(theme[themeFlag]); Font a = Font.loadFont(Objects.requireNonNull(this.getClass().getResourceAsStream("fonts/fzjt.ttf")), 20); Platform.runLater(() -> tm.setFontFamily(a.getFamily())); tools.makeFontFamilyChooser(fontChose); + Platform.runLater(() -> Application.setUserAgentStylesheet(theme[themeFlag])); changeTheme.setGraphic(new FontIcon(BootstrapIcons.MOON)); info.setGraphic(new FontIcon(BootstrapIcons.INFO_CIRCLE)); startGame.setText("开始游戏"); @@ -283,7 +280,7 @@ private void showAlert(Alert.AlertType alertType, String title, String header, S alert.setTitle(title); alert.setHeaderText(header); alert.setContentText(content); - alert.setOnHiding(event -> tm.removeScene(alert.getDialogPane().getScene())); - alert.show(); + alert.initOwner(inputTextFiled.getScene().getWindow()); + alert.showAndWait(); } } diff --git a/src/main/resources/META-INF/native-image/filter-file.json b/src/main/resources/META-INF/native-image/filter-file.json deleted file mode 100644 index d173ee0..0000000 --- a/src/main/resources/META-INF/native-image/filter-file.json +++ /dev/null @@ -1,11 +0,0 @@ -{ "rules": [ - {"excludeClasses" : "com.sun.glass.ui.mac.*"}, - {"excludeClasses" : "com.sun.glass.ui.gtk.*"}, - {"excludeClasses" : "com.sun.glass.ui.win.*"}, - {"excludeClasses" : "com.sun.prism.es2.*"}, - {"excludeClasses" : "com.sun.prism.d3d.*"}, - {"excludeClasses" : "com.sun.scenario.effect.impl.es2.*"}, - {"excludeClasses" : "com.sun.scenario.effect.impl.hw.d3d.*"}, - {"excludeClasses" : "com.gluonhq.attach.**"} - ] -} diff --git a/src/main/resources/META-INF/native-image/jni-config.json b/src/main/resources/META-INF/native-image/jni-config.json deleted file mode 100644 index 0c72e70..0000000 --- a/src/main/resources/META-INF/native-image/jni-config.json +++ /dev/null @@ -1,356 +0,0 @@ -[ -{ - "name":"[Lcom.sun.glass.ui.Screen;" -}, -{ - "name":"[Lcom.sun.javafx.font.FontConfigManager$FontConfigFont;" -}, -{ - "name":"com.sun.glass.ui.Application" -}, -{ - "name":"com.sun.glass.ui.Clipboard", - "methods":[{"name":"contentChanged","parameterTypes":[] }] -}, -{ - "name":"com.sun.glass.ui.Cursor", - "fields":[{"name":"ptr"}], - "methods":[ - {"name":"getNativeCursor","parameterTypes":[] }, - {"name":"getType","parameterTypes":[] } - ] -}, -{ - "name":"com.sun.glass.ui.Pixels", - "methods":[{"name":"attachData","parameterTypes":["long"] }] -}, -{ - "name":"com.sun.glass.ui.Screen", - "methods":[ - {"name":"","parameterTypes":["long","int","int","int","int","int","int","int","int","int","int","int","int","int","int","int","float","float","float","float"] }, - {"name":"notifySettingsChanged","parameterTypes":[] } - ] -}, -{ - "name":"com.sun.glass.ui.Size", - "methods":[{"name":"","parameterTypes":["int","int"] }] -}, -{ - "name":"com.sun.glass.ui.View", - "fields":[{"name":"ptr"}], - "methods":[ - {"name":"notifyDragDrop","parameterTypes":["int","int","int","int","int"] }, - {"name":"notifyDragEnter","parameterTypes":["int","int","int","int","int"] }, - {"name":"notifyDragLeave","parameterTypes":[] }, - {"name":"notifyDragOver","parameterTypes":["int","int","int","int","int"] }, - {"name":"notifyInputMethod","parameterTypes":["java.lang.String","int[]","int[]","byte[]","int","int","int"] }, - {"name":"notifyKey","parameterTypes":["int","int","char[]","int"] }, - {"name":"notifyMenu","parameterTypes":["int","int","int","int","boolean"] }, - {"name":"notifyMouse","parameterTypes":["int","int","int","int","int","int","int","boolean","boolean"] }, - {"name":"notifyRepaint","parameterTypes":["int","int","int","int"] }, - {"name":"notifyResize","parameterTypes":["int","int"] }, - {"name":"notifyScroll","parameterTypes":["int","int","int","int","double","double","int","int","int","int","int","double","double"] }, - {"name":"notifyView","parameterTypes":["int"] } - ] -}, -{ - "name":"com.sun.glass.ui.Window", - "fields":[{"name":"ptr"}], - "methods":[ - {"name":"isEnabled","parameterTypes":[] }, - {"name":"notifyClose","parameterTypes":[] }, - {"name":"notifyDelegatePtr","parameterTypes":["long"] }, - {"name":"notifyDestroy","parameterTypes":[] }, - {"name":"notifyFocus","parameterTypes":["int"] }, - {"name":"notifyFocusDisabled","parameterTypes":[] }, - {"name":"notifyFocusUngrab","parameterTypes":[] }, - {"name":"notifyLevelChanged","parameterTypes":["int"] }, - {"name":"notifyMove","parameterTypes":["int","int"] }, - {"name":"notifyMoveToAnotherScreen","parameterTypes":["com.sun.glass.ui.Screen"] }, - {"name":"notifyResize","parameterTypes":["int","int","int"] } - ] -}, -{ - "name":"com.sun.javafx.font.FontConfigManager$FcCompFont", - "fields":[ - {"name":"allFonts"}, - {"name":"fcName"}, - {"name":"firstFont"} - ] -}, -{ - "name":"com.sun.javafx.font.FontConfigManager$FontConfigFont", - "fields":[ - {"name":"familyName"}, - {"name":"fontFile"}, - {"name":"fullName"}, - {"name":"styleStr"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.D2D1_COLOR_F", - "fields":[ - {"name":"a"}, - {"name":"b"}, - {"name":"g"}, - {"name":"r"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.D2D1_MATRIX_3X2_F", - "fields":[ - {"name":"_11"}, - {"name":"_12"}, - {"name":"_21"}, - {"name":"_22"}, - {"name":"_31"}, - {"name":"_32"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.D2D1_PIXEL_FORMAT", - "fields":[ - {"name":"alphaMode"}, - {"name":"format"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.D2D1_POINT_2F", - "fields":[ - {"name":"x"}, - {"name":"y"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.D2D1_RENDER_TARGET_PROPERTIES", - "fields":[ - {"name":"dpiX"}, - {"name":"dpiY"}, - {"name":"minLevel"}, - {"name":"pixelFormat"}, - {"name":"type"}, - {"name":"usage"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.DWRITE_GLYPH_METRICS", - "fields":[ - {"name":"advanceHeight"}, - {"name":"advanceWidth"}, - {"name":"bottomSideBearing"}, - {"name":"leftSideBearing"}, - {"name":"rightSideBearing"}, - {"name":"topSideBearing"}, - {"name":"verticalOriginY"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.DWRITE_GLYPH_RUN", - "fields":[ - {"name":"advanceOffset"}, - {"name":"ascenderOffset"}, - {"name":"bidiLevel"}, - {"name":"fontEmSize"}, - {"name":"fontFace"}, - {"name":"glyphAdvances"}, - {"name":"glyphIndices"}, - {"name":"isSideways"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.directwrite.RECT", - "fields":[ - {"name":"bottom"}, - {"name":"left"}, - {"name":"right"}, - {"name":"top"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.freetype.FT_Bitmap", - "fields":[ - {"name":"buffer"}, - {"name":"num_grays"}, - {"name":"palette"}, - {"name":"palette_mode"}, - {"name":"pitch"}, - {"name":"pixel_mode"}, - {"name":"rows"}, - {"name":"width"} - ] -}, -{ - "name":"com.sun.javafx.font.freetype.FT_GlyphSlotRec", - "fields":[ - {"name":"advance_x"}, - {"name":"advance_y"}, - {"name":"bitmap"}, - {"name":"bitmap_left"}, - {"name":"bitmap_top"}, - {"name":"format"}, - {"name":"linearHoriAdvance"}, - {"name":"linearVertAdvance"}, - {"name":"metrics"} - ], - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.freetype.FT_Glyph_Metrics", - "fields":[ - {"name":"height"}, - {"name":"horiAdvance"}, - {"name":"horiBearingX"}, - {"name":"horiBearingY"}, - {"name":"vertAdvance"}, - {"name":"vertBearingX"}, - {"name":"vertBearingY"}, - {"name":"width"} - ] -}, -{ - "name":"com.sun.pisces.AbstractSurface", - "fields":[{"name":"nativePtr"}] -}, -{ - "name":"com.sun.pisces.JavaSurface", - "fields":[{"name":"dataInt"}] -}, -{ - "name":"com.sun.pisces.PiscesRenderer", - "fields":[ - {"name":"nativePtr"}, - {"name":"surface"} - ] -}, -{ - "name":"com.sun.pisces.Transform6", - "fields":[ - {"name":"m00"}, - {"name":"m01"}, - {"name":"m02"}, - {"name":"m10"}, - {"name":"m11"}, - {"name":"m12"} - ] -}, -{ - "name":"com.sun.prism.impl.PrismSettings", - "fields":[ - {"name":"disableD3D9Ex"}, - {"name":"forceGPU"}, - {"name":"isVsyncEnabled"}, - {"name":"verbose"} - ] -}, -{ - "name":"java.lang.Boolean", - "fields":[ - {"name":"FALSE"}, - {"name":"TRUE"} - ] -}, -{ - "name":"java.lang.Class", - "methods":[{"name":"forName","parameterTypes":["java.lang.String","boolean","java.lang.ClassLoader"] }] -}, -{ - "name":"java.lang.ClassLoader", - "methods":[ - {"name":"getPlatformClassLoader","parameterTypes":[] }, - {"name":"loadClass","parameterTypes":["java.lang.String"] } - ] -}, -{ - "name":"java.lang.Iterable", - "methods":[{"name":"iterator","parameterTypes":[] }] -}, -{ - "name":"java.lang.Object", - "methods":[{"name":"equals","parameterTypes":["java.lang.Object"] }] -}, -{ - "name":"java.lang.Runnable", - "methods":[{"name":"run","parameterTypes":[] }] -}, -{ - "name":"java.lang.String", - "methods":[{"name":"toLowerCase","parameterTypes":["java.util.Locale"] }] -}, -{ - "name":"java.nio.ByteBuffer", - "methods":[ - {"name":"array","parameterTypes":[] }, - {"name":"wrap","parameterTypes":["byte[]"] } - ] -}, -{ - "name":"java.util.ArrayList", - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"","parameterTypes":["int"] }, - {"name":"add","parameterTypes":["java.lang.Object"] }, - {"name":"get","parameterTypes":["int"] } - ] -}, -{ - "name":"java.util.Collections", - "methods":[{"name":"unmodifiableMap","parameterTypes":["java.util.Map"] }] -}, -{ - "name":"java.util.HashMap", - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"containsKey","parameterTypes":["java.lang.Object"] }, - {"name":"get","parameterTypes":["java.lang.Object"] }, - {"name":"put","parameterTypes":["java.lang.Object","java.lang.Object"] } - ] -}, -{ - "name":"java.util.HashSet", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"java.util.Iterator", - "methods":[ - {"name":"hasNext","parameterTypes":[] }, - {"name":"next","parameterTypes":[] } - ] -}, -{ - "name":"java.util.Map", - "methods":[ - {"name":"containsKey","parameterTypes":["java.lang.Object"] }, - {"name":"get","parameterTypes":["java.lang.Object"] }, - {"name":"keySet","parameterTypes":[] }, - {"name":"put","parameterTypes":["java.lang.Object","java.lang.Object"] } - ] -}, -{ - "name":"java.util.Set", - "methods":[ - {"name":"add","parameterTypes":["java.lang.Object"] }, - {"name":"size","parameterTypes":[] }, - {"name":"toArray","parameterTypes":["java.lang.Object[]"] } - ] -}, -{ - "name":"javafx.scene.paint.Color", - "methods":[{"name":"rgb","parameterTypes":["int","int","int","double"] }] -}, -{ - "name":"jdk.internal.loader.ClassLoaders$PlatformClassLoader" -}, -{ - "name":"org.graalvm.jniutils.JNIExceptionWrapperEntryPoints", - "methods":[{"name":"getClassName","parameterTypes":["java.lang.Class"] }] -} -] diff --git a/src/main/resources/META-INF/native-image/predefined-classes-config.json b/src/main/resources/META-INF/native-image/predefined-classes-config.json deleted file mode 100644 index 0e79b2c..0000000 --- a/src/main/resources/META-INF/native-image/predefined-classes-config.json +++ /dev/null @@ -1,8 +0,0 @@ -[ - { - "type":"agent-extracted", - "classes":[ - ] - } -] - diff --git a/src/main/resources/META-INF/native-image/proxy-config.json b/src/main/resources/META-INF/native-image/proxy-config.json deleted file mode 100644 index 0d4f101..0000000 --- a/src/main/resources/META-INF/native-image/proxy-config.json +++ /dev/null @@ -1,2 +0,0 @@ -[ -] diff --git a/src/main/resources/META-INF/native-image/reflect-config.json b/src/main/resources/META-INF/native-image/reflect-config.json deleted file mode 100644 index 7d64b4f..0000000 --- a/src/main/resources/META-INF/native-image/reflect-config.json +++ /dev/null @@ -1,507 +0,0 @@ -[ -{ - "name":"caidanci.HelloApplication", - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"main","parameterTypes":["java.lang.String[]"] } - ] -}, -{ - "name":"caidanci.HelloController", - "allDeclaredFields":true, - "queryAllDeclaredMethods":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"changeTheme","parameterTypes":[] }, - {"name":"infoButtonClicked","parameterTypes":[] }, - {"name":"initialize","parameterTypes":[] }, - {"name":"inputFiledKeyRelease","parameterTypes":["javafx.scene.input.KeyEvent"] }, - {"name":"startGame","parameterTypes":[] } - ] -}, -{ - "name":"com.sun.glass.ui.Screen" -}, -{ - "name":"com.sun.javafx.font.directwrite.DWFactory", - "methods":[{"name":"getFactory","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.font.freetype.FTFactory", - "methods":[{"name":"getFactory","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.logging.PrintLogger", - "methods":[{"name":"createInstance","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.logging.jfr.JFRPulseLogger", - "methods":[{"name":"createInstance","parameterTypes":[] }] -}, -{ - "name":"com.sun.javafx.reflect.Trampoline", - "methods":[{"name":"invoke","parameterTypes":["java.lang.reflect.Method","java.lang.Object","java.lang.Object[]"] }] -}, -{ - "name":"com.sun.javafx.scene.control.skin.Utils", - "methods":[{"name":"getResource","parameterTypes":["java.lang.String"] }] -}, -{ - "name":"com.sun.javafx.tk.quantum.QuantumToolkit", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.prism.GraphicsPipeline", - "methods":[ - {"name":"getFontFactory","parameterTypes":[] }, - {"name":"getPipeline","parameterTypes":[] } - ] -}, -{ - "name":"com.sun.prism.shader.DrawPgram_Color_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.DrawRoundRect_Color_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.FillPgram_Color_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.FillPgram_LinearGradient_PAD_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Mask_TextureSuper_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Solid_TextureFirstPassLCD_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Solid_TextureRGB_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Solid_TextureSecondPassLCD_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Texture_Color_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.shader.Texture_LinearGradient_PAD_Loader", - "methods":[{"name":"loadShader","parameterTypes":["com.sun.prism.ps.ShaderFactory","java.io.InputStream"] }] -}, -{ - "name":"com.sun.prism.sw.SWPipeline", - "methods":[{"name":"getInstance","parameterTypes":[] }] -}, -{ - "name":"com.sun.scenario.effect.impl.prism.PrRenderer", - "methods":[{"name":"createRenderer","parameterTypes":["com.sun.scenario.effect.FilterContext"] }] -}, -{ - "name":"com.sun.scenario.effect.impl.prism.ps.PPSLinearConvolveShadowPeer", - "methods":[{"name":"","parameterTypes":["com.sun.scenario.effect.FilterContext","com.sun.scenario.effect.impl.Renderer","java.lang.String"] }] -}, -{ - "name":"com.sun.scenario.effect.impl.prism.ps.PPSRenderer", - "methods":[{"name":"createRenderer","parameterTypes":["com.sun.scenario.effect.FilterContext"] }] -}, -{ - "name":"com.sun.scenario.effect.impl.prism.sw.PSWRenderer", - "methods":[{"name":"createRenderer","parameterTypes":["com.sun.scenario.effect.FilterContext"] }] -}, -{ - "name":"com.sun.scenario.effect.impl.sw.sse.SSERendererDelegate", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"com.sun.xml.internal.stream.XMLInputFactoryImpl", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"hellofx.HelloController", - "allDeclaredFields":true, - "queryAllDeclaredMethods":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"initialize","parameterTypes":[] } - ] -}, -{ - "name":"hellofx.HelloFXML", - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"main","parameterTypes":["java.lang.String[]"] } - ] -}, -{ - "name":"java.lang.Character", - "methods":[{"name":"isIdeographic","parameterTypes":["int"] }] -}, -{ - "name":"java.lang.Class", - "methods":[ - {"name":"forName","parameterTypes":["java.lang.Module","java.lang.String"] }, - {"name":"getModule","parameterTypes":[] } - ] -}, -{ - "name":"java.lang.Module", - "queriedMethods":[ - {"name":"getDescriptor","parameterTypes":[] }, - {"name":"getLayer","parameterTypes":[] }, - {"name":"getName","parameterTypes":[] }, - {"name":"getResourceAsStream","parameterTypes":["java.lang.String"] } - ] -}, -{ - "name":"java.lang.ModuleLayer", - "methods":[ - {"name":"boot","parameterTypes":[] }, - {"name":"findModule","parameterTypes":["java.lang.String"] } - ] -}, -{ - "name":"java.nio.ByteBuffer", - "methods":[{"name":"order","parameterTypes":["java.nio.ByteOrder"] }] -}, -{ - "name":"java.nio.ByteOrder", - "methods":[{"name":"nativeOrder","parameterTypes":[] }] -}, -{ - "name":"java.security.SecureRandomParameters" -}, -{ - "name":"javafx.fxml.FXMLLoader" -}, -{ - "name":"javafx.geometry.Pos", - "methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }] -}, -{ - "name":"javafx.scene.Camera" -}, -{ - "name":"javafx.scene.Group" -}, -{ - "name":"javafx.scene.Node", - "queryAllDeclaredMethods":true, - "methods":[ - {"name":"getId","parameterTypes":[] }, - {"name":"getStyleClass","parameterTypes":[] }, - {"name":"setId","parameterTypes":["java.lang.String"] }, - {"name":"setLayoutX","parameterTypes":["double"] }, - {"name":"setLayoutY","parameterTypes":["double"] }, - {"name":"setOnKeyReleased","parameterTypes":["javafx.event.EventHandler"] }, - {"name":"setOnMouseClicked","parameterTypes":["javafx.event.EventHandler"] }, - {"name":"setOnTouchReleased","parameterTypes":["javafx.event.EventHandler"] }, - {"name":"setVisible","parameterTypes":["boolean"] } - ] -}, -{ - "name":"javafx.scene.ParallelCamera" -}, -{ - "name":"javafx.scene.Parent", - "queryAllDeclaredMethods":true, - "methods":[{"name":"getStylesheets","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.Scene" -}, -{ - "name":"javafx.scene.control.Button", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.ButtonBase", - "queryAllDeclaredMethods":true, - "methods":[{"name":"setOnAction","parameterTypes":["javafx.event.EventHandler"] }] -}, -{ - "name":"javafx.scene.control.ComboBox", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.ComboBoxBase", - "queryAllDeclaredMethods":true -}, -{ - "name":"javafx.scene.control.Control", - "queryAllDeclaredMethods":true -}, -{ - "name":"javafx.scene.control.Label", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.Labeled", - "queryAllDeclaredMethods":true, - "methods":[ - {"name":"setMnemonicParsing","parameterTypes":["boolean"] }, - {"name":"setText","parameterTypes":["java.lang.String"] }, - {"name":"setTextAlignment","parameterTypes":["javafx.scene.text.TextAlignment"] } - ] -}, -{ - "name":"javafx.scene.control.Spinner", - "queryAllDeclaredMethods":true, - "queryAllPublicMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.TextArea", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.TextField", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.control.TextInputControl", - "queryAllDeclaredMethods":true -}, -{ - "name":"javafx.scene.effect.Effect" -}, -{ - "name":"javafx.scene.image.Image" -}, -{ - "name":"javafx.scene.image.ImageView" -}, -{ - "name":"javafx.scene.layout.AnchorPane", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"setBottomAnchor","parameterTypes":["javafx.scene.Node","java.lang.Double"] }, - {"name":"setLeftAnchor","parameterTypes":["javafx.scene.Node","java.lang.Double"] }, - {"name":"setRightAnchor","parameterTypes":["javafx.scene.Node","java.lang.Double"] }, - {"name":"setTopAnchor","parameterTypes":["javafx.scene.Node","java.lang.Double"] } - ], - "queriedMethods":[ - {"name":"getBottomAnchor","parameterTypes":["javafx.scene.Node"] }, - {"name":"getLeftAnchor","parameterTypes":["javafx.scene.Node"] }, - {"name":"getRightAnchor","parameterTypes":["javafx.scene.Node"] }, - {"name":"getTopAnchor","parameterTypes":["javafx.scene.Node"] } - ] -}, -{ - "name":"javafx.scene.layout.BorderPane", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"setAlignment","parameterTypes":["javafx.scene.Node","javafx.geometry.Pos"] }, - {"name":"setCenter","parameterTypes":["javafx.scene.Node"] } - ], - "queriedMethods":[{"name":"getAlignment","parameterTypes":["javafx.scene.Node"] }] -}, -{ - "name":"javafx.scene.layout.FlowPane", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"setAlignment","parameterTypes":["javafx.geometry.Pos"] } - ] -}, -{ - "name":"javafx.scene.layout.GridPane", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.layout.Pane", - "queryAllDeclaredMethods":true, - "methods":[{"name":"getChildren","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.layout.Region", - "queryAllDeclaredMethods":true, - "methods":[ - {"name":"setMaxHeight","parameterTypes":["double"] }, - {"name":"setMaxWidth","parameterTypes":["double"] }, - {"name":"setMinHeight","parameterTypes":["double"] }, - {"name":"setMinWidth","parameterTypes":["double"] }, - {"name":"setPrefHeight","parameterTypes":["double"] }, - {"name":"setPrefWidth","parameterTypes":["double"] } - ] -}, -{ - "name":"javafx.scene.layout.StackPane", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"javafx.scene.layout.VBox", - "queryAllDeclaredMethods":true, - "queryAllPublicConstructors":true, - "methods":[ - {"name":"","parameterTypes":[] }, - {"name":"setAlignment","parameterTypes":["javafx.geometry.Pos"] }, - {"name":"setSpacing","parameterTypes":["double"] } - ] -}, -{ - "name":"javafx.scene.shape.Line" -}, -{ - "name":"javafx.scene.shape.LineTo" -}, -{ - "name":"javafx.scene.shape.MoveTo" -}, -{ - "name":"javafx.scene.shape.Path" -}, -{ - "name":"javafx.scene.shape.PathElement" -}, -{ - "name":"javafx.scene.shape.Rectangle" -}, -{ - "name":"javafx.scene.shape.SVGPath" -}, -{ - "name":"javafx.scene.shape.Shape" -}, -{ - "name":"javafx.scene.text.Font" -}, -{ - "name":"javafx.scene.text.Text" -}, -{ - "name":"javafx.scene.text.TextAlignment", - "methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }] -}, -{ - "name":"javafx.scene.transform.Transform" -}, -{ - "name":"javafx.stage.PopupWindow" -}, -{ - "name":"javafx.stage.Stage" -}, -{ - "name":"javafx.stage.Window" -}, -{ - "name":"org.h2.Driver" -}, -{ - "name":"org.h2.mvstore.db.LobStorageMap$BlobMeta$Type", - "fields":[{"name":"INSTANCE"}] -}, -{ - "name":"org.h2.mvstore.db.LobStorageMap$BlobReference$Type", - "fields":[{"name":"INSTANCE"}] -}, -{ - "name":"org.h2.mvstore.db.NullValueDataType", - "fields":[{"name":"INSTANCE"}] -}, -{ - "name":"org.h2.mvstore.db.RowDataType$Factory", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.mvstore.tx.VersionedValueType$Factory", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.mvstore.type.ByteArrayDataType", - "fields":[{"name":"INSTANCE"}] -}, -{ - "name":"org.h2.mvstore.type.LongDataType", - "fields":[{"name":"INSTANCE"}] -}, -{ - "name":"org.h2.store.fs.async.FilePathAsync", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.mem.FilePathMem", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.mem.FilePathMemLZF", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.niomapped.FilePathNioMapped", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.niomem.FilePathNioMem", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.niomem.FilePathNioMemLZF", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.retry.FilePathRetryOnInterrupt", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.split.FilePathSplit", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"org.h2.store.fs.zip.FilePathZip", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"sun.misc.Unsafe", - "fields":[{"name":"theUnsafe"}] -}, -{ - "name":"sun.security.provider.DRBG", - "methods":[{"name":"","parameterTypes":["java.security.SecureRandomParameters"] }] -}, -{ - "name":"sun.security.provider.MD5", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"sun.security.provider.NativePRNG", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"sun.security.provider.SHA", - "methods":[{"name":"","parameterTypes":[] }] -}, -{ - "name":"sun.security.provider.SHA2$SHA256", - "methods":[{"name":"","parameterTypes":[] }] -} -] diff --git a/src/main/resources/META-INF/native-image/resource-config.json b/src/main/resources/META-INF/native-image/resource-config.json deleted file mode 100644 index 1675b56..0000000 --- a/src/main/resources/META-INF/native-image/resource-config.json +++ /dev/null @@ -1,57 +0,0 @@ -{ - "resources":{ - "includes":[ - { - "pattern":"\\QMETA-INF/services/java.sql.Driver\\E" - }, - { - "pattern":"\\Qatlantafx/base/theme/primer-dark.bss\\E" - }, - { - "pattern":"\\Qatlantafx/base/theme/primer-light.bss\\E" - }, - { - "pattern":"\\Qorg/h2/util/data.zip\\E" - } - ]}, - "bundles":[ - { - "name":"com.sun.javafx.tk.quantum.QuantumMessagesBundle", - "locales":[ - "", - "und", - "zh-CN" - ] - }, - { - "name":"com/sun/glass/ui/win/themes", - "locales":[ - "", - "de", - "en", - "es", - "fr", - "it", - "ja", - "ko", - "pt-BR", - "sv", - "und", - "zh-CN", - "zh-TW" - ] - }, - { - "name":"com/sun/javafx/scene/control/skin/resources/controls", - "locales":[ - "", - "und", - "zh-CN" - ] - }, - { - "name":"hellofx.hello", - "locales":["und"] - } - ] -} diff --git a/src/main/resources/META-INF/native-image/serialization-config.json b/src/main/resources/META-INF/native-image/serialization-config.json deleted file mode 100644 index bf554e0..0000000 --- a/src/main/resources/META-INF/native-image/serialization-config.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "types":[ - ], - "lambdaCapturingTypes":[ - ] -} diff --git a/src/main/resources/caidanci/hello-view.fxml b/src/main/resources/caidanci/hello-view.fxml index 01c9513..b8f091d 100644 --- a/src/main/resources/caidanci/hello-view.fxml +++ b/src/main/resources/caidanci/hello-view.fxml @@ -4,7 +4,6 @@ - @@ -36,7 +35,6 @@