xcode:prepare-xcode-build

Full name:

com.sap.prd.mobile.ios.mios:xcode-maven-plugin:1.14.5:prepare-xcode-build

Description:

Prepares the local build environment. Copies and unpacks the artifacts of the referenced projects into the target folder.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: runtime.

Optional Parameters

Name Type Since Description
additionalPackagingTypes Map - (no description)
checkoutDirectory File - The original Xcode sources located in the src/xcode directory stay untouched during the whole Maven build. However, as we might have to modify the info.plist or the project itself we copy the whole Xcode source directory during the build into another "checkout" directory that by default named checkout and located below the Maven build ( target) directory.
configurations Set - The Xcode configurations that shall be built (e.g. Debug and Release). If no configuration is provided in the plugin's configuration section of the pom.xml it defaults to the values provided in the defaultAppConfigurations or defaultLibConfigurations parameters
defaultAppConfigurations String 1.2.0 Comma separated list of the default Xcode build configurations that should be built for apps (in contrast to libraries). These values only apply if no "configurations" are explicitly provided in the POM.
Default value is: Release,Debug.
defaultAppSdks String 1.2.0 Comma separated list of the default Xcode SDKs that should be used for apps (in contrast to libs). These values only apply if no "sdks" are explicitly provided in the POM.
Default value is: iphoneos,iphonesimulator.
defaultLibConfigurations String 1.2.0 Comma separated list of the default Xcode build configurations that should be built for libraries (in contrast to apps). These values only apply if no "configurations" are explicitly provided in the POM.
Default value is: Release,Debug.
defaultLibSdks String 1.2.0 Comma separated list of the default Xcode SDKs that should be used for libraries (in contrast to apps). These values only apply if no "sdks" are explicitly provided in the POM.
Default value is: iphoneos,iphonesimulator.
preferFatLibs boolean 1.5.2 If set to true the dependency resolution will try to retrieve the fat libs instead of the sdk specific ones. In all cases the lib resolution will try to fallback to the other library type if the preferred type is not available.
Default value is: false.
sdks Set - Explicit lists of sdks (iphoneos,iphonesimulator) the Xcode project shall be built for. If no configuration is provided in the plugin's configuration section of the pom.xml it defaults to the values provided in the defaultAppSdks or defaultLibSdks parameters
useSymbolicLinks boolean - (no description)
Default value is: false.
xcodeCompileDirectory File - The xcode directory of the copied sources below the checkout directory.

Parameter Details

additionalPackagingTypes:

(no description)
  • Type: java.util.Map
  • Required: No

checkoutDirectory:

The original Xcode sources located in the src/xcode directory stay untouched during the whole Maven build. However, as we might have to modify the info.plist or the project itself we copy the whole Xcode source directory during the build into another "checkout" directory that by default named checkout and located below the Maven build ( target) directory.
  • Type: java.io.File
  • Required: No
  • Expression: ${xcode.checkoutDirectory}

configurations:

The Xcode configurations that shall be built (e.g. Debug and Release). If no configuration is provided in the plugin's configuration section of the pom.xml it defaults to the values provided in the defaultAppConfigurations or defaultLibConfigurations parameters
  • Type: java.util.Set
  • Required: No

defaultAppConfigurations:

Comma separated list of the default Xcode build configurations that should be built for apps (in contrast to libraries). These values only apply if no "configurations" are explicitly provided in the POM.
  • Type: java.lang.String
  • Since: 1.2.0
  • Required: No
  • Expression: ${xcode.app.defaultConfigurations}
  • Default: Release,Debug

defaultAppSdks:

Comma separated list of the default Xcode SDKs that should be used for apps (in contrast to libs). These values only apply if no "sdks" are explicitly provided in the POM.
  • Type: java.lang.String
  • Since: 1.2.0
  • Required: No
  • Expression: ${xcode.app.defaultSdks}
  • Default: iphoneos,iphonesimulator

defaultLibConfigurations:

Comma separated list of the default Xcode build configurations that should be built for libraries (in contrast to apps). These values only apply if no "configurations" are explicitly provided in the POM.
  • Type: java.lang.String
  • Since: 1.2.0
  • Required: No
  • Expression: ${xcode.lib.defaultConfigurations}
  • Default: Release,Debug

defaultLibSdks:

Comma separated list of the default Xcode SDKs that should be used for libraries (in contrast to apps). These values only apply if no "sdks" are explicitly provided in the POM.
  • Type: java.lang.String
  • Since: 1.2.0
  • Required: No
  • Expression: ${xcode.lib.defaultSdks}
  • Default: iphoneos,iphonesimulator

preferFatLibs:

If set to true the dependency resolution will try to retrieve the fat libs instead of the sdk specific ones. In all cases the lib resolution will try to fallback to the other library type if the preferred type is not available.
  • Type: boolean
  • Since: 1.5.2
  • Required: No
  • Expression: ${xcode.preferFatLibs}
  • Default: false

sdks:

Explicit lists of sdks (iphoneos,iphonesimulator) the Xcode project shall be built for. If no configuration is provided in the plugin's configuration section of the pom.xml it defaults to the values provided in the defaultAppSdks or defaultLibSdks parameters
  • Type: java.util.Set
  • Required: No

useSymbolicLinks:

(no description)
  • Type: boolean
  • Required: No
  • Expression: ${xcode.useSymbolicLinks}
  • Default: false

xcodeCompileDirectory:

The xcode directory of the copied sources below the checkout directory.
  • Type: java.io.File
  • Required: No
  • Expression: ${xcode.compileDirectory}