- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 CocoaPods 上创建了一个 swift (iOS/MacOS) 库 ( BillboardSwiftLibrary )。一般来说,它有包含源文件的 Assets 和类文件夹。
我希望我的库支持 Swift Package Manager,因此我将源文件从 Classes 文件夹移动到 pod 外部的 Sources 文件夹中。但是,仍然可以从“开发” Pane 访问它们。
现在我的库不会为 Cocoapods 启动而构建,但会为 Swift Package Manager 进行编译,当我运行 pod lib lint BillboardSwiftLibrary.podspec
ERROR | file patterns: The source_files pattern did not match any file.
最佳答案
我在 Medium 上从头开始写了一篇关于“使用 CocoaPods、Carthage、SPM 支持和 Travis 创建 iOS 框架来运行测试和 FaSTLane 来实现发布自动化”的长系列文章。我希望它有帮助。
Creating Swift framework is easy but adding CocoaPods, Carthage and Swift Package Manager support at the same time can sounds like scary in the first place. In addition to that adding Travis to run test for all commits and adding Fastlane to automate release processes for all dependency managers looks like a horror movie. But don’t be afraid. After you finished this series, you can easily create your own Swift frameworks that uses all these tools to make it perfect!
Part 1 — Create CocoaPod and release it. :您将创建自己的CocoaPod并发布它。
Part 2 — Add Carthage support :您在第 1 部分创建和发布的 CocoaPod 将通过 Carthage 安装。
Part 3 — Add Swift Package Manager support :在第 1 部分创建和发布的 CocoaPod 将通过 Swift Package Manager 安装。
Part 4 — Integrate Travis to build example project and run tests for framework :您的框架可以通过 CocoaPods、Carthage 和 Swift Package Manager 安装,针对 GitHub 上的每次推送,自动在 Travis 上运行测试。
Part 5 — Integrate Fastlane to automate release processes by running just one line of command. :
每次您想要通过 CocoaPods、Carthage 和 Swift Package Manager 发布新版本的框架时,您都必须执行以下步骤:
1-实现新版本的更改
2-运行测试以确保它们正常工作
3-提交并推送新版本的更改。
4- 将新版本标记到 git
git tag 0.1.1
git push origin 0.1.1
Carthage 和 Swift 包管理器从 GitHub 安装您的框架。如果您正确配置了框架,则可以在此步骤后通过 Carthage 或 Swift Package Manager 安装它。然而,CocoaPods 还有 4 个步骤来完成发布流程。
5- 增加 podspec 版本 => 即 s.version = '0.1.1'
6-验证本地 podspec:
pod lib lint ODCustomFramework.podspec
7-验证 pod 的发布
pod spec lint ODCustomFramework.podspec
8-发布
pod trunk push ODCustomFramework.podspec
Travis 和 FaSTLane 集成后,步骤 2、4、5、6、7 和 8 会自动执行,不再需要在每次发布新版本时重复这些步骤。
1-实现新版本的更改
2- 提交并推送新版本的更改。
3-Travis 在每次推送后自动运行测试。
4- 运行以下 faSTLane 命令以自动执行所有发布过程。 (步骤 4、5、6、7、8)
exec fastlane major | minor | patch
关于ios - 使用 CocoaPods 和 Swift Package Manager 设置库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53375958/
我正在尝试使用 JAXB 从 XSD 生成 java 类。 XSD 是我公司的官方 xsd,因此我无法仅为我的项目修改它们。在该网站上进行了数百次尝试和搜索后,我决定直接提出问题。 我的 XSD 中有
我已经了解了以下链接中的详细信息,但仍然存在何时使用哪个文件的问题?https://docs.npmjs.com/files/package-lock.json 最佳答案 包.json 包含项目的相关
当我在 centos 上运行命令 rpmbuild -bb mypackage.spec 时,出现错误 error: Package already exists: %package debuginf
my.packages 是 src 目录中的自定义原型(prototype)包。 Plone 实例中的数千个项目与其类型一起添加。我想将包重命名为 my.package。通过简单地卸载 my.pack
根据 javadoc 规范,我在相关包的根目录中放置了一个名为 package-info.html 的文档文件。但是,当我在该文件夹上运行 Doxygen 时,不会拾取该文件中的文档。我如何告诉 Do
我已经定义了如下的包: (defpackage :thehilariouspackageofamirteymuri (:nicknames ampack amir teymuri) (:use
我正在思考这个问题: > .packages() > (.packages()) [1] "stats" "graphics" "grDevices" "utils" "datase
我在内存中有一个 System.IO.Packaging.Package(它是一个 WordprocessingDocument)并且想将它流式传输到浏览器以保存它。 Word 文档已被基于 MVC
即使这是我不常发现的东西,在成员之前注释/* package*/的原因是什么? /* package */ final void attach(Context context) { atta
我正在开发我的应用程序,但在添加包以便导入它时,我总是收到此错误。 error: type 'Package.Dependency' has no member 'Package' 这是我的 Pack
install.packages("data.table") trying URL 'https://cran.rstudio.com/bin/macosx/el-capitan/contrib/3.
放置手动创建的插件的最佳位置是什么: a) C:\Users\{UserName}\AppData\Roaming\Sublime Text 3\Packages 或 b) C:\Users\{Use
这是一个有趣的 Perl 行为。 (至少对我来说 :) ) 我有两个包 PACKAGE1 和 PACKAGE2,它们导出具有相同名称的函数 Method1()。 由于将有如此多的包将导出相同的功能,使
package-archives (("marmalade" . "http://marmalade-repo.org/packages/") ("gnu" . "http://elpa.gnu.or
任何人都可以让我知道 package-lock.json 文件的确切用途吗? 尽管许多人提到它用于查看版本化依赖树。 寻找简单易行的解释。 提前致谢。 最佳答案 npm install使用此文件来确保
Python documentation说 Consider this code: import sound.effects.echo import sound.effects.surround fr
我在 ubuntu 上运行 VPS: Distributor ID: Ubuntu Description: Ubuntu 14.04.5 LTS Release: 14.04 C
我有这样一个结构 $ tree -h . ├── [1.0K] myproj │ ├── [ 0] index.py │ ├── [ 0] __init__.py │ └──
我正在尝试解压 System.IO.Packaging.Package我从网络服务器收到的。也就是说,我正在使用 System.IO.Packaging.Package.Open(Stream)方法并
关于 package.json 文件中的@types 依赖项,我有一个愚蠢的问题: 在下面的 URL 中解释了应该安装的类型作为运行时依赖 npm install --save @types/loda
我是一名优秀的程序员,十分优秀!