首页
学习
活动
专区
圈层
工具
发布

Mac
EN

Stack Overflow用户
提问于 2012-05-21 09:23:05
回答 3查看 11K关注 0票数 2

我试图通过PackageMaker的命令行接口自动构建Mac软件包。到目前为止,我成功地构建了包并运行了postinstall脚本。告诉我有什么方法在通过命令行构建时添加选择吗?因为我希望用户有一个运行或不运行postinstall脚本的选项。我不想用".pmdoc“。这个选择太糟糕了。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-18 10:30:56

正如我在评论中所说的,PackageMaker列出了我添加到项目中的文件列表,并将其写入到项目中。因此,如果我想要添加一个文件,我需要打开项目,删除包含该文件的选择,最后,再次添加包含新文件的所有文件。或者直接编辑项目的XML文件。使用PackageMaker自动构建我的项目包是难以忍受的。所以我换了个工具。一些谷歌帮助我上网套餐。这个工具也不太理想,但它比苹果的要好得多。Mojca大致描述了我到目前为止对PackageMaker所做的工作。在使用时,我还必须使用项目文件。但是这个软件不会收集你添加到项目中的所有文件的信息,除非你明确地告诉它这样做:

您可以在图片中看到,我可以选择将shoUld包含到项目的深度文件中。.app文件夹下的所有文件夹都是手动展开的,以确保可以包含新文件的文件夹也没有展开。在本例中,它是文件夹。下一步也是最后一步是使用Ant组装包。

代码语言:javascript
复制
 <exec executable="/usr/local/bin/packagesbuild">
            <arg value="-v"/>
            <arg value="${basedir}/Installer/MyProject.pkgproj"/>
 </exec>
票数 4
EN

Stack Overflow用户

发布于 2012-07-19 14:59:28

经过一段时间的挣扎,我发现有更多最新的和相关的工具:pkgbuild产品建设

我已经有一段时间没有使用它们了,因为我找到了一种方法来做我想做的事--折磨包装师。

希望这能帮助一些不幸的Mac。

票数 4
EN

Stack Overflow用户

发布于 2012-05-30 10:24:02

这并不完全是您的问题的答案,但一位经验丰富的Mac开发人员最近花了大量时间与PackageMaker进行测试和斗争,给了我以下提示:

您可以从命令行调用PackageMaker,但看起来苹果并没有为此付出太多努力,而且很多事情都不起作用。因此,使用GUI界面代替。

我决定上他的课。作为一个很好的折衷方案,我成功的是,有一次只使用GUI来准备初始的.pmdoc文件,然后手工对这些xml文件进行任何更改。然后,我们在Xcode项目中有一个目标,它调用packagemaker:

代码语言:javascript
复制
packagemaker --doc $SRCROOT/Project.pmdoc --out $BUILT_PRODUCTS_DIR/stage/ProjectInstaller.pkg
hdiutil create $BUILT_PRODUCTS_DIR/Project-$VERSION.dmg -volname \"Project-$VERSION\" -fs HFS+ -srcfolder \"$BUILT_PRODUCTS_DIR/stage

因此,我们现在需要做的(除了增加.pmdoc文件中的版本)是调用

代码语言:javascript
复制
xcodebuild -target Package

以获得.dmg图像。

我决定发布这个答案,尽管您明确要求不要使用.pmdoc,主要是在从头创建包时与他人分享(他人的)坏经验。也是因为我第一次没有意识到用GUI创建包并不意味着每次我想修改或构建包时都需要使用“奇怪的GUI工具”。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10682583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档