gpt4 book ai didi

macos - 如何在ant复制任务中保留exec文件

转载 作者:行者123 更新时间:2023-12-04 14:30:31 25 4
gpt4 key购买 nike

我已经使用 Ant 为 Mac OS X 创建了 Java FX 包。它创建包含两个文件的包 -
1.我的应用程序
2.MyApplication.dmg

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

<copy todir="my_new_folder">
<fileset dir="old_folder\bundles"/>
</copy>

它在“my_new_folder”成功复制了两个文件。但是在从“my_new_folder”运行 .app 时没有启动我的应用程序,尽管它是从“old_folder”正确启动的。

在比较复制的应用程序时,我发现 exec(Unix 可执行文件)位于 MacOS 文件夹(“Show Package Contents/Contents/MacOS”)没有保存,它的种类在文件文件中发生了变化。

如何保存其种类到 Unix 可执行文件 因为我只是在执行简单的复制目录。

谢谢,
尼拉姆·夏尔马

最佳答案

如 Ant 复制任务 guide 中所述:

Unix Note: File permissions are not retained when files are copied; they end up with the default UMASK permissions instead. This is caused by the lack of any means to query or set file permissions in the current Java runtimes. If you need a permission-preserving copy function, use this instead:


<exec executable="cp" ... >

因此,在您的情况下,请替换 <copy>和:
<exec executable="cp">
<arg line="-R old_folder/bundles my_new_folder"/>
</exec>

(注意你应该使用正斜杠,即使这个 ant 脚本是在 Windows 下使用的)。

关于macos - 如何在ant复制任务中保留exec文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14603625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com