iOS开发进阶(十三):脚手架创建iOS项目

文章目录

一、前言

项目初期,需要搭建项目基本框架,为此离不开辅助工具,即脚手架。当然,IDE也可以实现新建空白项目,但是其新建后的项目结构可能不符合预期设计,故需要通过脚手架创建项目方式统一项目开发规范,对于开发管理至关重要。

脚手架shell文本命令(createiOS.sh)如下:

powershell 复制代码
git clone http://88.66.99.83/BPPlatform/vast_app_template.git
cd vast_app_template
/usr/local/cocoapods/bundle/bin/bundle-env ruby create_xcode_project.rb ../ TestSC com.boc.test
open ../

其中,create_xcode_project.rb文件内容如下:

javascript 复制代码
require File.expand_path('../proj_creator', __FILE__)
require File.expand_path('../file_migration', __FILE__)
require File.expand_path('../conf_substitution', __FILE__)
require File.expand_path('../create_main_workspace', __FILE__)

# # create program
# puts "\033[32m'=============START============='\033[0m\n"
# creator = ProCreator.new
# creator.start
#
# # migrate files
# puts "\033[32m'files setting...'\033[0m\n"
# mig = FileMigration.new
# mig.migration
#
# # replace key words
# puts "\033[32m'content setting...'\033[0m\n"
# subOp = ConfSubsitution.new
# subOp.start
#
# puts "\033[32m'pod install...'\033[0m\n"
# puts "\033[32m#{`pod install`}\033[0m\n"
#
#

rootpath = ARGV.shift

projName = ARGV[0]

bundleid = ARGV[1]

widgets = ARGV[2]

generator = WorkspaceGenerator.new(rootpath, projName, bundleid, widgets)

generator.create

执行shell脚本:

powershell 复制代码
./createiOS.sh

生成后的项目结构如下图所示:

由项目结构可知,脚手架中对项目做了很好的分层处理,便于项目解耦。

二、xcode-select 命令

Print or change the path to the active developer directory. This directory controls which tools are used for the Xcode command line tools (for example, xcodebuild) as well as the BSD development commands (such as cc and make).

-help可查看xcode-select存在哪些命令:

当安装多个xcode的版本,使用该工具使用指定的版本。

  • -p 或者 --print-path 查看当前开发者目录,也即是xcode的版本目录。
  • -s <path>--switch <path> 选择xcode版本。
  • --install 安装;
  • --version 查看版本;
  • --reset 恢复默认;
  • sudo rm -rf /Library/Developer/CommandLineTools 强制删除安装目录下的文件;
powershell 复制代码
sudo xcode-select --switch Xcode.app

三、拓展阅读

相关推荐
harder3218 小时前
Swift 面向协议编程的 RMP 模式
开发语言·ios·mvc·swift·策略模式
YoungHong19928 小时前
Claude Code & 智谱GLM-5.1 环境配置指南 (Windows/macOS/Ubuntu)
windows·ubuntu·macos
leluckys9 小时前
Jenkins CI/CD 持续集成专题十二、iOS-Jenkins自动化打包集成
ios·ci/cd·jenkins
leluckys9 小时前
Jenkins CI/CD 持续集成专题八- jenkins 之 iOS 打包及上传至蒲公英
ios·ci/cd·jenkins
全栈攻略9 小时前
老版本Docker Desktop for Mac 历史版本下载大全(macOS 10.15/11/12)
macos·docker·容器
YoungHong19929 小时前
【图文】Codex接入Kimi K2/GLM-5.1 环境配置指南 (Windows/macOS/Ubuntu)
windows·ubuntu·macos
leluckys9 小时前
Jenkins CI/CD 持续集成专题十一、jenkins打包ios脚本证书
ios·ci/cd·jenkins
leluckys9 小时前
Jenkins CI/CD 持续集成专题十-jenkins 可以通过api 打ios包
ios·ci/cd·jenkins
leluckys9 小时前
Jenkins CI/CD 持续集成专题九 -Mac服务器上配置Jenkins实现iOS项目自动打包
macos·ci/cd·jenkins
壹方秘境9 小时前
作为开发者,我们需要的可能不是Wireshark那样的数据包分析工具,也不是Stream、ProxyPin那样的抓包工具
后端·ios