Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Wix创建java应用程序的快捷方式_Java_Xml_Wix - Fatal编程技术网

如何使用Wix创建java应用程序的快捷方式

如何使用Wix创建java应用程序的快捷方式,java,xml,wix,Java,Xml,Wix,如何创建在Wix中启动带有参数的java应用程序的快捷方式?这是我当前的模式,它可以编译,但不会将快捷方式放在桌面上 <DirectoryRef Id="DesktopFolder"> <Component Id="Shortcut" Guid="GUID-HERE"> <Shortcut Id="desktopFoobarApp" Na

如何创建在Wix中启动带有参数的java应用程序的快捷方式?这是我当前的模式,它可以编译,但不会将快捷方式放在桌面上

<DirectoryRef Id="DesktopFolder">
    <Component Id="Shortcut" Guid="GUID-HERE">
            <Shortcut
                        Id="desktopFoobarApp" 
                        Name="Foobar 1.0"
                        Directory='DesktopFolder'
                        WorkingDirectory='INSTALLDIR'
                        Target="java"
                        Arguments="-jar [INSTALLDIR]FoobarApp.jar -v -f [INSTALLDIR]conf.cfg"
                        Icon="icon.ico" />
        <RegistryValue Root="HKCU" Key="Software\Microsoft\FoobarApp" Name="installed" Type="integer" Value="0" KeyPath="yes"/>                                                     
    </Component>
</DirectoryRef>

我想你需要把
标签放在
标签之间

试试这个:

</File Id="id" Name="file name" Source="file source path">
    <Shortcut Id="desktopFoobarApp"  Name="Foobar 1.0" Directory='DesktopFolder'
              WorkingDirectory='INSTALLDIR' Target="java"
              Arguments="-jar [INSTALLDIR]FoobarApp.jar -v -f [INSTALLDIR]conf.cfg"
              Icon="icon.ico" />
</File>

我发现您需要将整个路径添加到目标。以下代码起作用:

<DirectoryRef Id="DesktopFolder">
    <Component Id="Shortcut" Guid="GUID-HERE">
            <Shortcut
                        Id="desktopFoobarApp" 
                        Name="Foobar 1.0"
                        Directory='DesktopFolder'
                        WorkingDirectory='INSTALLDIR'
                        Target="[System64Folder]javaw.exe"
                        Arguments='-jar "[INSTALLDIR]FoobarApp.jar" -v -f "[INSTALLDIR]conf.cfg"'
                        Icon="icon.ico" />
        <RegistryValue Root="HKCU" Key="Software\Microsoft\FoobarApp" Name="installed" Type="integer" Value="0" KeyPath="yes"/>                                                     
    </Component>
</DirectoryRef>


下一步在文件元素中时,不能使用目标属性。错误CNDL0062:当快捷方式元素嵌套在文件元素下面时,无法指定快捷方式/@Target属性。快捷方式/@Target属性已格式化。因为它已经在
中定义了
,所以只需删除
目标
属性,但该文件需要由java启动。源代码是一个jar。如果删除该文件,快捷方式如何知道通过java二进制文件启动该文件?