首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何打开.swiftmodule文件

如何打开.swiftmodule文件
EN

Stack Overflow用户
提问于 2018-11-21 16:39:36
回答 3查看 3.4K关注 0票数 4

我想从.swiftmodule框架中检查iOS文件的公共内容。

在这里(https://lists.swift.org/pipermail/swift-users/Week-of-Mon-20160111/000827.html)我发现了一个使用swift-ide-test的建议

您可以使用快速的ide测试工具来转储模块的公共接口,但是命令行接口不像它应该的那样漂亮: 快速-ide-测试-打印-模块-源-文件名=虚拟.快速-模块-打印=MyApp …再加上找到模块及其所有依赖项所需的任何-I或-F路径。如果您在Mac上,则需要在开头插入"xcrun -sdk macosx“或"xcrun -sdk iphoneos”,以找到系统标头。

不幸的是,当我尝试使用Xcode 10.1运行xcrun -sdk iphoneos swift-ide-test时,会出现以下错误:

代码语言:javascript
运行
复制
$ xcrun -sdk iphoneos swift-ide-test
xcrun: error: unable to find utility "swift-ide-test", not a developer tool or in PATH

似乎这个工具已经从Xcode中删除了。

还有关于如何打开.swiftmodule文件的其他想法吗?

EN

回答 3

Stack Overflow用户

发布于 2018-11-21 20:33:37

经过几个小时的挣扎,我找到了一种从iOS框架中检查模块的公共内容的隐式方法。

这个技巧是通过在Swift中使用:print_module命令来完成的。

更确切地说,您需要使用指向框架的路径启动Swift REPL:

代码语言:javascript
运行
复制
swift -F <path to a folder with LibName.framework> -deprecated-integrated-repl

现在,您可以使用带有框架名称的:print_module命令:

代码语言:javascript
运行
复制
(swift) :print_module LibName

资料来源:

https://stackoverflow.com/a/27882120/2241008

https://stackoverflow.com/a/25005445/2241008

https://stackoverflow.com/a/36235186/2241008

swift-ide-test工具(https://github.com/apple/swift/tree/master/tools/swift-ide-test)的源代码仍然存在,所以查看快捷模块内容的另一种方法是编译这个工具,但我没有进一步研究这个解决方案。

票数 8
EN

Stack Overflow用户

发布于 2022-04-13 19:05:30

正如在Swift论坛上提到的,您可以使用命令llvm-bcanalyzer -dump获得一个快速模块的文本表示。您可以使用brew install llvm安装它,手册页是这里

票数 1
EN

Stack Overflow用户

发布于 2021-04-06 15:57:39

[.swiftmodule]

你可以:

  1. 将此框架添加到框架中
  2. 导入框架import <module_name>
  3. Jump to Definition
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53416742

复制
相关文章

相似问题

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