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] 自动拷贝Plugin目录下的.d.ts到 Typing目录,以避免维护两份.d.ts #1908

Merged
merged 9 commits into from
Nov 12, 2024

Conversation

BlurryLight
Copy link
Contributor

No description provided.

@chexiongsheng
Copy link
Collaborator

编译不过。
另外目标目录相对ModuleDirectory其实不合适(包括原来的逻辑),Plugin理论上是可以安装在引擎目录的。

@BlurryLight
Copy link
Contributor Author

编译不过。 另外目标目录相对ModuleDirectory其实不合适(包括原来的逻辑),Plugin理论上是可以安装在引擎目录的。

DirectoryReference ProjectDir = Target.ProjectFile == null ? (DirectoryReference)null : Target.ProjectFile.Directory; 从其他文件里看到了这个,可以用来直接索引Project所在的目录。 这个编译错误我再看看..

@chexiongsheng
Copy link
Collaborator

我最新版本去掉ue/ue_s.d.ts了,统一实时生成。

@chexiongsheng
Copy link
Collaborator

要处理目录不存在的情况

@chexiongsheng
Copy link
Collaborator

目录不存在创建一个比较合适吧?

@BlurryLight
Copy link
Contributor Author

目录不存在创建一个比较合适吧?

PlatformFile.CopyDirectoryTree(*(FPaths::ProjectDir() / TEXT("Typing")),

这里第一次生成ue.d.ts的时候会生成对应的目录并全量拷贝一次所有的手写的d.ts

@chexiongsheng
Copy link
Collaborator

JsEnv.build.cs是JsEnv有修改才执行的。
点击生成按钮表示JsEnv已经编译完了。

@chexiongsheng
Copy link
Collaborator

我觉得你用封装好的DirectoryCopy更省事些

@BlurryLight
Copy link
Contributor Author

那样会导致 ue_bp.d.ts 覆盖项目里generate的。 也可以考虑删除插件里自带的空的 ue_bp.d.ts ?

@chexiongsheng
Copy link
Collaborator

那删掉ue_bp.d.ts吧。后续有新增文件DirectoryCopy也能自动适应

@chexiongsheng chexiongsheng merged commit 0d36cf3 into Tencent:master Nov 12, 2024
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants