我想在Linux上使用JetBrains Rider创建Xamarin.Forms项目(Ubuntu 16 LTS)。
我知道,Xamarin不支持Linux,但JetBrains表示可以使用Rider在Linux上开发Xamarin应用程序。
所以在安装了dotnet SDK for Linux之后,我想创建Xamarin.Forms项目,正如你在下面的picture(屏幕截图)中看到的那样,我选择的平台是Multiplatform,类型是Xamarin.Forms和共享代码是可移植类库。
我收到错误“在此计算机上找不到目标框架”和“在此计算机上找不到可移植的配置文件”。
如果我选择平台iOS / macOS / tvOS / watchOS,它会毫无问题地创建项目,我只在创建Android或Multiplatform项目时遇到问题。
答案 0 :(得分:1)
1。)确保您从此处安装了常规mono
:http://www.mono-project.com/download/
2。)从此处下载xamarin-android/xamarin.android-oss_<version>.orig.tar.bz2
:https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android-linux/lastSuccessfulBuild/Azure/
3。)解压缩到/usr/lib/xamarin.android-oss_<version>/
4。)执行以下操作:
cd /path/to/xamarin.android-oss*/
sudo cp -r bin/Debug/lib/xamarin.android/* /usr/lib/mono
sudo mkdir -p /usr/lib/mono/xamarin-android/bin/
sudo cp -r bin/Debug/bin/* /usr/lib/mono/xamarin-android/bin/
5。)创建一个Xamarin项目(我使用了JetBrains Rider)
6。)将此属性组添加到您的.csproj
文件中:
<PropertyGroup Condition=" '$(OS)' == 'Unix' ">
<MonoAndroidBinDirectory>/usr/lib/mono/xamarin-android/bin</MonoAndroidBinDirectory>
<AndroidSdkDirectory>$(ANDROID_SDK_PATH)</AndroidSdkDirectory>
<AndroidNdkDirectory>$(ANDROID_NDK_PATH)</AndroidNdkDirectory>
<TargetFrameworkRootPath>/usr/lib/mono/xbuild-frameworks/</TargetFrameworkRootPath>
</PropertyGroup>
7。)确保正确设置了ANDROID_SDK_PATH
和ANDROID_NDK_PATH
环境变量。
为我工作。
参考:https://github.com/0xFireball/xamarin-android-linux/blob/master/rider-setup.md