Unity - 将 git 包作为依赖项包含在嵌入式包的 package.json 中

Roy*_*hal 5 git unity-game-engine package.json

我创建了一个嵌入式统一包并尝试添加一个 git unity 包作为依赖项。在本例中,我尝试添加 SocketIOUnity ( https://github.com/itisnajim/SocketIOUnity ),但这也适用于任何其他包。

我正在尝试将 SocketIOUnity 添加到我的 package.json 中,以便可以将其解析为依赖项。

我试过这个:

"dependencies": {
  "com.itisnajim.socketiounity": "https://github.com/itisnajim/SocketIOUnity.git"
}
Run Code Online (Sandbox Code Playgroud)

并得到以下错误:

[Package Manager Window] Cannot perform upm operation: Unable to add package [https://github.com/my-package.git]:
  Package my-package@https://github.com/my-package.git has invalid dependencies or related test packages:
    com.itisnajim.socketiounity (dependency): Version 'https://github.com/itisnajim/SocketIOUnity.git' is invalid. Expected a 'SemVer' compatible value. [NotFound].
UnityEditor.EditorApplication:Internal_CallUpdateFunctions ()
Run Code Online (Sandbox Code Playgroud)

似乎 git url仅在项目清单中受支持

我也尝试过这个:

"dependencies": {
  "com.itisnajim.socketiounity": "1.1.4"
}
Run Code Online (Sandbox Code Playgroud)

并得到以下错误:

[Package Manager Window] Cannot perform upm operation: Unable to add package [https://github.com/my-package.git]:
  Package my-package@https://github.com/my-package.git has invalid dependencies or related test packages:
    com.itisnajim.socketiounity (dependency): Package [com.itisnajim.socketiounity@1.1.4] cannot be found [NotFound].
UnityEditor.EditorApplication:Internal_CallUpdateFunctions ()

Run Code Online (Sandbox Code Playgroud)

这是有道理的,因为我不相信这个包已被推送到 Unity 从中获取的任何注册表。

我该怎么做呢?Unity 是否提供技术支持?

Its*_*rus 1

Unity 允许您将 Git 包添加为项目清单文件中的依赖项,但不能添加到嵌入式包的 package.json 文件中。您需要将其添加到项目清单文件中。

将此行添加到 manifest.json 中的依赖项中:

"com.itisnajim.socketiounity": "https://github.com/itisnajim/SocketIOUnity.git"
Run Code Online (Sandbox Code Playgroud)

例子:

"com.itisnajim.socketiounity": "https://github.com/itisnajim/SocketIOUnity.git"
Run Code Online (Sandbox Code Playgroud)

来源:

https://docs.unity3d.com/uploads/Main/upm-dependency.svg