除非首先运行清理,否则运行ibtool会构建部分iOS构建中断

Jas*_*ker 5 xcode internationalization ios xcode5

添加了运行的构建脚本步骤

ibtool ./Mobile/Base.lproj/MainStoryboard_iPad.storyboard --generate-strings-file ./Mobile/Base.lproj/MainStoryboard_iPad.strings
Run Code Online (Sandbox Code Playgroud)

这使构建失败

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"     "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>com.apple.ibtool.errors</key>
<array>
    <dict>
        <key>description</key>
        <string>Interface Builder could not open the document "MainStoryboard_iPad.storyboard" because it does not exist.</string>
    </dict>
</array>
</dict>
</plist>
Command /bin/sh failed with exit code 1
Run Code Online (Sandbox Code Playgroud)

首次清理项目然后构建项目时,它将首次成功.

我试图在示例项目中复制它,但无法复制它.我们真正的项目要复杂得多......有6种语言,项目有两个目标(一个用于企业构建,一个用于商店构建).许多课程和两个大型故事板.

有没有人有建议尝试做什么不同,以找出导致问题的原因,以确定它是否是一个工具错误?

n8t*_*8tr 4

我在使用 Xcode 5 和常规 xib 文件时遇到同样的问题。ibtools 是随机工作的。使用 sudo 最终成功了我。

这是一个例子:

$ibtool --generate-strings-file en.lproj/MyVC.strings en.lproj/MyVC.xib
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"     
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.ibtool.errors</key>
<array>
    <dict>
        <key>description</key>
        <string>Interface Builder could not open the document "MyVC.xib" because it does not exist.</string>
    </dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

每次使用 sudo 都有效,尽管它有时会抱怨“用户域将不稳定”

$sudo ibtool --generate-strings-file en.lproj/MyVC.strings en.lproj/MyVC.xib
2013-10-01 10:04:35.943 Interface Builder Cocoa Touch Tool[1717:303] CFPreferences: user       
home directory at file:///var/root/Library/Application%20Support/iPhone%20Simulator/User/ is unavailable. User domains will be volatile.
$
Run Code Online (Sandbox Code Playgroud)