Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UE] Bug: UE5.5下Source\CSharpParamDefaultValueMetas\CSharpParamDefaultValueMetas.cs内有编译错误 #1969

Open
3 tasks done
sagasarate opened this issue Jan 15, 2025 · 5 comments
Assignees
Labels
bug Something isn't working Unreal

Comments

@sagasarate
Copy link

前置阅读 | Pre-reading

Puer的版本 | Puer Version

master

UE的版本 | UE Version

5.5

发生在哪个平台 | Platform

Editor(win)

错误信息 | Error Message

1>C:\UEPrjs\TestPrj05\Plugins\Puerts\Source\CSharpParamDefaultValueMetas\CSharpParamDefaultValueMetas.cs(36,69,36,77): error CS1061: “UhtSession”未包含“Packages”的定义,并且找不到可接受第一个“UhtSession”类型参数的可访问扩展方法“Packages”(是否缺少 using 指令或程序集引用?)
1>C:\UEPrjs\TestPrj05\Plugins\Puerts\Source\CSharpParamDefaultValueMetas\CSharpParamDefaultValueMetas.cs(73,60,73,68): error CS1061: “UhtSession”未包含“Packages”的定义,并且找不到可接受第一个“UhtSession”类型参数的可访问扩展方法“Packages”(是否缺少 using 指令或程序集引用?)
1>已完成生成项目“CSharpParamDefaultValueMetas.ubtplugin.csproj”的操作 - 失败。

问题重现 | Bug reproduce

起初是编译demo项目出现这个问题,看了下代码,使用了宏UE_5_5_OR_LATER来区分5.5和早期版本,但这个宏并没有起作用,导致编译错误。
后来将puerts放入自己的测试项目编译,也出现了相同的错误

另外demo项目有个5.5分支,代码去掉了对UE版本的判断,所以没有这个问题

@sagasarate sagasarate added bug Something isn't working Unreal labels Jan 15, 2025
@sagasarate
Copy link
Author

使用的vs2022编译

@chexiongsheng
Copy link
Collaborator

chexiongsheng commented Jan 15, 2025

首先我的5.5跑起来没问题。我所知道的你之外的5.5项目也挺多的,跑起来也没问题。
所以你那应该有什么不同的地方。你光这么提我是没法处理的,你应该先找到这个不同的地方。

@sagasarate
Copy link
Author

是不是要在CSharpParamDefaultValueMetas.ubtplugin这个项目里自己加UE_5_5_OR_LATER这个宏?我试了下代码提示里不存在任何UE相关的宏,加了这个宏确实可以顺利编译

@chexiongsheng
Copy link
Collaborator

是不是要在CSharpParamDefaultValueMetas.ubtplugin这个项目里自己加UE_5_5_OR_LATER这个宏?我试了下代码提示里不存在任何UE相关的宏,加了这个宏确实可以顺利编译

要在这里加有啥意义呢?我还不如直接改那C#代码。

能正常跑的项目的也是用同一份puerts代码。别在这花功夫了。

@morirain
Copy link
Contributor

这个宏是ubt生成到你项目里的,大概率引擎升级后旧的文件没更新,自己检查下项目文件。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Unreal
Projects
None yet
Development

No branches or pull requests

3 participants