我目前正在尝试维护一个内部编写的库,以便更新我们的cocoaPods存储库。为了做到这一点,我必须能够获得当我构建库时应该生成的.framework(我猜,我不仅仅是整个Xcode / iOS世界的新东西)
我找到了构建阶段菜单,在那里我找到了一个名为“准备框架”的子菜单,我想这里的一切都在进行..
这是什么:
set -e
mkdir -p "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Versions/A/Headers"
# Link the "Current" version to "A"
/bin/ln -sfh A "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Versions/Current"
/bin/ln -sfh Versions/Current/Headers "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Headers"
/bin/ln -sfh "Versions/Current/${PRODUCT_NAME}" "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/${PRODUCT_NAME}"
# The -a ensures that the headers maintain the source modification date so that we don't constantly
# cause propagating rebuilds of files that import these headers.
/bin/cp -a "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/" "${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Versions/A/Headers"
问题是,当我构建库时,我从未找到我需要的.framework ..
我认为那边可能有错误。如果你们能帮帮我..
Guillaume: - )
答案 0 :(得分:0)
问题在于脚本的最后一行
/bin/cp -a "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/" \
"${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Versions/A/Headers"
那里应该是反斜杠,或者你应该用单行写入路径(在同一组双引号内)
/bin/cp -a "${TARGET_BUILD_DIR}/${PUBLIC_HEADERS_FOLDER_PATH}/${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework/Versions/A/Headers"
或
public String getStateAsString(int state) {
switch (state) {
case 0:
return "VACANTE";
case 1:
return "OCCUPIED";
case 2:
return "RESERVED";
default:
return "STATE NOT DEFINED";
}
}