首先,我是一个完整的初学者,在整个Xamarin生命周期中,构建工具和术语,所以对不起,如果这是非常基本/不正确的一些措辞。使用xbuild从多项目解决方案构建一个项目
我们有一个Example.sln
文件,其中包含以下项目定义;一个用于Android系统和一个用于iOS系统:
Project("{...}") = "Example", "Example\Example\Example.csproj", "{...}"
EndProject
Project("{...}") = "Example.Droid", "Example\Example.Droid\Example.Droid.csproj", "{...}"
EndProject
Project("{...}") = "Example.iOS", "Example\Example.iOS\Example.iOS.csproj", "{...}"
EndProject
我目前正在试图建立只是iOS的项目与xbuild
在命令行上。我的问题是,如果有一种方法可以在xbuild
标志上指定它;例如尝试与/t:Example.ios:Build
和东西都没有运气。所以,我只是试图分拆Android项目并运行:
$ xbuild /p:Configuration="Ad-Hoc" \
/p:Platform="iPhone" \
/p:IpaPackageDir="./Builds" \
/t:Build Example.sln
其中,我猜,因为在Droid项目仍然之前 iOS版.sln
,失败找了Android SDK时:
/Users/ci/Example-app/Example.sln (Build) ->
(Build target) ->
/Users/ci/Example-app/Example/Example.Droid/Example.Droid.csproj (default targets) ->
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets (_BuildSdkCache target) ->
: error XA5205: The Android SDK Directory could not be found. Please set via /p:AndroidSdkDirectory.
暂时从解决方案中删除Android项目做了诀窍(保留Example\Example.Droid
文件但注释掉了2行),但它对我来说并不是最理想的,也许在我想构建Android应用程序的其他CI作业中,等等。
谢谢!