iOS - genstrings:无法连接到输出目录en.lproj

I00*_*00I 7 terminal localization genstrings ios

我在网上和这里搜索了这个错误.在线它显示我的结果使用不同的语言然后英语很好谷歌.这里有一个帖子和一个从未真正回答过这个问题的家伙.

我的桌面上有我的xcode项目文件夹.在项目文件夹中,我有一个en.lproj文件夹,里面有iPad和iPhone故事板以及localization.plist文件.但是当我在Xcode中启动项目时,无法找到这个en.lproj文件夹.那么这可能是问题所在?

使用我桌面上的项目文件夹,我启动终端输入:cd

然后将我的项目文件夹拖到终端,它给我路径.然后我将这行代码粘贴到终端中

找 .-name*.m | xargs genstrings -o en.lproj

我在终端中收到此错误消息:

genstrings:无法连接到输出目录en.lproj

它多次打印这行,然后说我的项目是一个目录的路径?

没有.strings文件.对我做错了什么的想法?我得到了UILabels,我从Storyboard中拖放,但我也是用编码的字符串

NSLocalizedString(@"First Level Passed",@"这是屏幕上显示的一条消息,允许用户知道他们已经通过了第一级!");

那么上面的终端代码片段应该找到那些NSLocalizedStrings吧?我认为它首先找不到en.lproj文件夹,但我不知道?

任何帮助都会很棒.

Sar*_*den 13

迟到,从来没有,

您正在projectroot/en.lproj文件夹中创建一个文件(localizable.strings).如果此文件夹不存在,则会收到此错误消息.只需在根目录中创建文件夹en.lproj,该命令即可运行.


g21*_*2gs 5

我在按照教程执行以下命令时遇到了同样的错误。

\n\n
genstrings -o en.lproj *.swift\n
Run Code Online (Sandbox Code Playgroud)\n\n

上面的命令给我以下错误:

\n\n
\n

genstrings:无法连接到输出目录 en.lproj

\n
\n\n

我的问题:

\n\n
    \n
  • 我尝试在我自己的目录(即根项目目录的子目录)上实现上述命令,其中所有“.lproj”目录都在那里。- 这给了我上述错误。
  • \n
  • 然后我删除了子文件夹“Localization”上的旧 \xe2\x80\x9cLocalizable.strings\xe2\x80\x9d 。并在根目录中创建了新的 \xe2\x80\x9cLocalized.strings\xe2\x80\x9d 。- 这里我没有收到任何错误,但按照“genstrings”命令没有发生任何事情。
  • \n
\n\n

解决方案:

\n\n

在命令行上移动到项目的根目录,您可以在其中获取所有“.lproj”目录。

\n\n

添加文件路径,其中列出了所有“NSLocalizedString(“TEXT”,注释:“COMMENT”)” - 在我的情况下,我已列出“Constants.swift”文件中的所有内容。

\n\n

所以,我执行了以下命令,它的工作就像魅力一样。

\n\n
 genstrings -o en.lproj/ #ProjectPath#/Constants/Constants.swift\n
Run Code Online (Sandbox Code Playgroud)\n\n

注意:\n只需将文件从 Xcode 拖放到终端即可轻松获取文件路径。

\n