Tencent / xLua

xLua is a lua programming solution for C# ( Unity, .Net, Mono) , it supports android, ios, windows, linux, osx, etc.
Other
9.39k stars 2.46k forks source link

Unity项目使用UPM引入XLua问题 #746

Closed suntabu closed 2 years ago

suntabu commented 4 years ago

你好,

在讲Xlua打成UPM包引入项目之后发现ObjectTranslator是个partial class,不能同时位于2个Assembly。 但是要使用UPM引入库就必须遵守Assembly definition and packages

这个矛盾点可不可以通过继承的方式解决: ObjectTranslator改成base class,其他地方的partial class通过继承base class实现功能扩展。

但是这样做会不会有什么风险或者肯定是走不通的?

suntabu commented 4 years ago

我已经提交了一个PR#747,用于支持UPM

worker-l commented 3 years ago

所以,这个问题目前还没有解决?

suntabu commented 3 years ago

有使用upm方式来引入xlua这个需求的人少,然后我前面提的pr因为XLUA_GENERAL的编译错误CI过不了,作者也在忙其他开源项目,没时间来看这个PR,索性我就把PR关了的

haiyaojing commented 3 years ago

如果支持upm,会方便很多。。

ClaineLe commented 3 years ago

Unity现在强力推广UPM,就目前来说,非常好用。 如果xLua未来使用UPM方式来管理,未来的推广,我认为会有质的飞跃。

hanxu1210 commented 2 years ago

我已经提交了一个PR#747,用于支持UPM

生成的DelegateGensBridge.cs里面还有partial calss DelegateBridge来扩展xlua程序集内的DelegateBridge,这个也需要改成用DelegateBridgeExtension之类的来继承DelegateBridge吧。否则xlua还是不能打成独立的程序集啊

suntabu commented 2 years ago

这个也得原作者处理才行,而且我自己项目是用的方式很麻烦,具体细节不是很记得了,现在我们项目换成了HybridCLR这个热更方案,还不错的