请问 .net core 3.1 生成的库,可以给 java 调用吗?

JDD1997 2020-06-20 06:39:21
公司的桌面端软件是 c# 的,安卓端是 java 的,有些功能在 c# 上已经实现了,不想在安卓上用 java 再实现一遍,想着不是说.net core可以跨平台吗? 那用最新的 .net core3.1 能否生成在安卓上 java 可以直接调用的库呢?
谢谢指教.
...全文
4968 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 2020-06-22
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
找有点经验的同事问问
assky124 2020-06-22
  • 打赏
  • 举报
回复
改成web Api就可以
github_36000833 2020-06-21
  • 打赏
  • 举报
回复
如果你的目标是面向不同设备的开发,基本使用同一套代码。Dotnet方向建议你使用Xamarin。 【Xamarin 允许你使用 .NET 代码和特定于平台的用户界面生成适用于 Android、iOS 和 macOS 的本机应用。】 https://docs.microsoft.com/zh-cn/xamarin/ 如果你的目标是集成Dotnet和Java服务, 最常见 的方式就是进行服务间交互,使用一定的进程间通讯协议。比如Java程序使用微软的SQL服务就是一种例子。 如果你只是想了解Java和Dotnet可能的调用机制,那么要理解: 1、跨平台是支持在不同平台下工作,它不等同于支持被任何宿主调用。 2、Dotnet编译出来的程序(程序部分是Dotnet的中间语言),*需要有一个Dotnet的运行器*。该运行器理解Dotnet程序,可以即时编译dotnet中间语言,可以提供垃圾回收等等宿主服务。 3、同样的,Java程序也是编译成中间语言,也需要一个运行器(Java Virtual Machine)来装入,即时编译,和垃圾回收服务等。 因此,目前Java是不能直接装入Dotnet程序的,反之亦然。但是,可以有这么一个宿主,该宿主同时装入Dotnet运行期和Java运行期,那么是可以在实现在一个进程里,同时运行dotnet和java代码。但是,dotnet和java还是不能直接互相理解,它们之间的任何调用/交互,需要额外的努力,比如需要宿主从中翻译和调停。
by_封爱 版主 2020-06-20
  • 打赏
  • 举报
回复
显然不能,.net生成的好像是dll吧 而Java使用的是jar。。。。
threenewbee 2020-06-20
  • 打赏
  • 举报
回复
可以啊,你在android里面跑一套ubuntu server虚拟机,在ubuntu server虚拟机里面再跑一套.net core。

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧