Имя папки «неизвестно» в приложении сборки Apache в Windows 10 - PullRequest
0 голосов
/ 28 ноября 2018

Мы использовали Apache Ant для сборки приложения Windows из двоичного файла Java.Он генерирует двоичный файл установщика Windows.После запуска этой установки, она успешно развернута, и каждая операция выглядит хорошо.Однако имя папки установки - «неизвестно», а не «myApp» - название нашего решения.Я установил этот установщик в Windows 10. Как я могу исправить имя папки как имя нашего решения?

Заранее спасибо,

Ниже приводится мой build.xml.

<?xml version="1.0" encoding="UTF-8"?>
<project 
    name="myApp-win32" 
    default="do-deploy" 
    basedir="." 
    xmlns:fx="javafx:com.sun.javafx.tools.ant">

    <property name="version" value="2.0.4" />
    <property name="java.myhome" value="C:\Program Files (x86)\Java\jdk1.8.0_171\bin" />

    <target name="init-fx-tasks">
        <path id="fxant">
            <filelist>
                <file name="${java.myhome}/../lib/ant-javafx.jar" />
                <file name="${java.myhome}../jre/lib/ext/jfxrt.jar" />
                <file name="${basedir}" />
            </filelist>
        </path>

        <taskdef resource="com/sun/javafx/tools/ant/antlib.xml" uri="javafx:com.sun.javafx.tools.ant" classpathref="fxant" />
    </target>

    <target name="do-deploy" depends="init-fx-tasks">
        <delete dir="deploy" />
        <delete dir="dist" />
        <mkdir dir="dist" />
        <mkdir dir="dist/libs" />
        <mkdir dir="deploy" />

        <copy todir="dist">
            <fx:fileset dir="${basedir}/../bin" includes="*" excludes="*.jar" />
        </copy>

        <copy todir="dist/libs">
            <fx:fileset dir="${basedir}/../bin" includes="*.jar" />
        </copy>

        <fx:resources id="appRes">
            <fx:fileset dir="dist" includes="libs/**"/>
            <fx:fileset dir="dist" includes="myApp.jar"/>
        </fx:resources>

        <fx:jar destfile="dist/myApp.jar">
            <fx:application 
                id="myApp"
                name="myApp" 
                mainClass="com.xxxx.myApp.myApp" 
                version="${version}"
            />
            <fx:fileset dir="${basedir}/../bin" includes="jspWin.*"/>
            <fx:resources refid="appRes" />
            <manifest>
                <attribute name="Implementation-Vendor" value="xxxx Ltd" />
                <attribute name="Implementation-Title" value="myApp-win32" />
                <attribute name="Implementation-Version" value="${version}" />
                <attribute name="JavaFX-Feature-Proxy" value="None" />
            </manifest>
        </fx:jar>

        <fx:deploy embedJNLP="false" 
                   extension="false" 
                   includeDT="false" 
                   offlineAllowed="true" 
                   outdir="${basedir}/deploy" 
                   nativeBundles="all" 
                   updatemode="background"
                   verbose="true"
                   >

            <fx:platform basedir="${java.myhome}/../"/>      
            <fx:resources>
                <fx:fileset dir="dist" includes="**" excludes="*.log"/>
            </fx:resources>
            <fx:application 
                name="FastGPS"
                mainClass="com.myApp.myApp" 
                version="win32-${version}-installer"
                />
            <!--fx:info title="myApp">
                <fx:icon href="tr.ico" kind="shortcut"
                        width="32" height="32" depth="8"/> 
            </fx:info-->            
        </fx:deploy>
    </target>
</project>

1 Ответ

0 голосов
/ 14 января 2019

Решил эту проблему, добавив синтаксис в build.xml

<fx:info title="myApp" vendor="myVendor"/>

. Он сгенерирует папку с тем же именем «myVendor» и скопирует ваше myApp в эту папку

...