此倉庫是Jamesnk/Newtonsoft.json的叉子,包含常規獨立的自定義構建,但更重要的是AOT目標,例如所有IL2CPP構建(WebGL,iOS,iOS,Android,Windows,Mac OS X)和Portable .Net (UWP,WP8) 。
自2022年2月下旬以來, Unity現在發布了其包裝的更新版本: [email protected]
由於v2.0.0-preview.1,他們的軟件包是newtonsoft.json的叉子的叉子。他們的最新版本v3.0.1仍然如此。這意味著,通過切換到他們的官方包裹,您將獲得:
Newtonsoft.Json.Utilities.AotHelper
I型從Saladlab分叉,這是該叉子以來一直是該叉子的核心部分。
我所有的IL2CPP和託管代碼都剝離了特定的錯誤文件。
繼續使用最新的newtonsoft.json叉子,但現在由Unity員工而不是我保持最新。
另外,由於Unity的許多內部軟件包都取決於它,因此它實際上總是包含在較新版本中,因此您甚至不必再安裝它!
我將繼續在問題和討論中提供盡可能多的支持,但是,請將您的支持門票集中在https://forum.unity.com/,https://answers.unity.com上/,and https ://issuetracker.unity3d.com/。
要開始使用他們的官方套餐,您可以在此處遵循我的安裝指南:
提供newtonsoft.json v10.0.3,v11.0.2,v12.0.3和v13.0.1替代方案。
newtonsoft.json-for-unity.converters軟件包,用於轉換統一類型,例如vector3,quaternion,color等等!
對IL2CPP的全面支持
通過Unity軟件包管理器交付,可輕鬆更新和版本切換
Full Newtonsoft.json.tests測試套件通過Unity 2018.4.14f1和2019.2.11f1,帶有單聲道和IL2CPP作為腳本後端。
預編譯為dll,以供更快的構建
newtonsoft.json.utility 。提前解決共同問題的助理公用事業課程。 (閱讀有關AOT的更多信息)
link.xml
解決AOT問題的廣泛文檔
是的。現在是。自2022年2月下旬以來,Unity採用了此包,為Unity生態系統提供了官方維護的Newtonsoft.json軟件包。 ♥
我的目標是以前成為Newtonsoft.json的最新叉。 Unity Technologies現在已經扮演了這一角色。
該存儲庫已完成其任務:提供newtonsoft.json。現在,它已經完全受到團結本身的認可,我可以像其他人一樣高興地貶低了這個項目。
GUID [...] for assets '...' conflicts with: '...'
GUID [6c694cfdc33ae264fb33e0cd1c7e25cf] for asset 'Packages/jillejr.newtonsoft.json-for-unity/Plugins/Newtonsoft.Json AOT/Newtonsoft.Json.dll' conflicts with:
'Packages/com.unity.nuget.newtonsoft-json/Runtime/AOT/Newtonsoft.Json.dll' (current owner)
We can't assign a new GUID because the asset is in an immutable folder. The asset will be ignored.
這是因為Unity的軟件包, com.unity.nuget.newtonsoft-json
,並且該軟件包同時存在。這是不支持的,也沒有直接計劃進行這項工作。
您必須可悲地卸載此軟件包, jillejr.newtonsoft.json-for-unity
。
diff --git a/Packages/manifest.json b/Packages/manifest.json
index 49a3afa..f0edd27 100644
--- a/Packages/manifest.json
+++ b/Packages/manifest.json
@@ -18,7 +18,7 @@
"com.unity.collab-proxy": "1.2.16",
"com.unity.test-framework": "1.1.22",
"com.unity.ugui": "1.0.0",
- "jillejr.newtonsoft.json-for-unity": "13.0.102",
+ "com.unity.nuget.newtonsoft-json": "3.0.1",
"jillejr.newtonsoft.json-for-unity.converters": "1.0.0",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
閱讀更多:#111(評論)
com.unity.nuget.newtonsoft-json
的狀態如何?我已經嘗試過,請盡力而為,在#145
我已經寫了有關安裝newtonsoft.json的新官方採用的叉子(我的叉子)的文檔,可以在此處找到:https://github.com/jillejr/newtonsoft.json-for-unity/wiki/wiki /wiki/install-------官方評價
通過包裝安裝程序安裝(實驗)
單擊此處下載
Install-jillejr.newtonsoft.json-for-unity-13.0.102.unitypackage
以Unity打開下載的
.unitypackage
文件。最簡單的方法是將文件拖放到統一窗口中。單擊“導入”以將其全部導入。
一旦安裝程序成功編譯,它將為您的項目添加正確的UPM註冊表和軟件包,然後刪除自身。
在您的項目成功編譯之前,安裝程序才能運行。確保解決所有語法和其他編譯錯誤,甚至只是暫時,以便安裝程序可以執行。
非常喜歡 @ @theed-tools製造如此出色的工具!
通過OpenUPM安裝
openupm add jillejr.newtonsoft.json-for-unityWiki的完整安裝指南:通過OpenUPM安裝
非常喜歡❤️@favoyang製造如此出色的工具!
通過Pure UPM安裝
Wiki的完整安裝指南:通過Pure UPM安裝
通過git安裝在UPM中
您也可以通過git安裝。假設您在計算機上安裝了git。
這是推薦版本最少(但可作為後備),因為:
如果您通過git安裝,您將無法通過軟件包管理器接口更新軟件包。
這要求您,您的同事和您的CI/CD管道安裝GIT以構建項目。
安裝需要更長的時間,就像UPM在大多數版本中都將在項目的整個歷史記錄中克隆。
在以後的Unity版本中,您可以通過軟件包管理器接口直接導入。
提供以下URL:
https://github.com/jilleJr/Newtonsoft.Json-for-Unity.git#upm
Wiki上的完整安裝指南:通過upm中的git安裝
json.net
標記的堆棧溢出帖子感謝您甚至閱讀此書:)
如果您想貢獻,這就是您可以做的:
傳播! ❤更多用戶→更多的反饋→我有更多的意志力來在此項目上工作。這是貢獻的最佳方法!
打開一個問題。可能是新轉換器的功能請求,或者您發現了一個錯誤?
解決未分配的問題之一。如果它看起來像是一項有趣的任務,沒有人被分配,那麼只需對其進行評論,然後說您想嘗試一下。
我意識到,很少有問題是微不足道的,因此,如果您想解決小問題,請查看Unity Converters軟件包回复史上未分配的問題的列表。
打開一個已解決的新功能或問題的公關。請記住在開始做任何事情之前要問,所以沒有兩個在做同一件事。
彈出功能請求或問題彈出,並讓提交者建議以後為解決方案添加PR是一個絕對是存儲庫維護者可以收到的最大禮物。 ?
我有一個包含一些準則的MD文件。事先閱讀可能是一件好事。
這些文檔已移至./ci/readme.md。
所有拉的請求都必須遵守此存儲庫中的.remarkrc
文件中發現的備註樣式規則。 .md
文件是通過CODACY自動凸起的,但是要在本地運行它們,您必須首先安裝一些先決條件:
安裝NPM
安裝remark-cli
和一些樣式包
# You may need to add "sudo"
npm install --global remark-cli
# Intentionally not globally
npm install remark-lint remark-preset-lint-markdown-style-guide remark-frontmatter
然後棉絨!例如:
$ remark .github
.github/ISSUE_TEMPLATE/bug_report.md: no issues found
.github/ISSUE_TEMPLATE/feature_request.md: no issues found
.github/ISSUE_TEMPLATE/not-working-as-expected.md: no issues found
.github/ISSUE_TEMPLATE/question.md: no issues found
.github/PULL_REQUEST_TEMPLATE/code-update.md: no issues found
.github/PULL_REQUEST_TEMPLATE/docs-update.md: no issues found
足夠常見的情況,我們有一個Wiki頁面。
閱讀與分支機構的工作,“合併Jamesnks Repo” Wiki頁面的部分。
此存儲庫的大多數更改都可以應用於所有不同版本。例如,應將IL2CPP HotFix中的link.xml
或BugFix更改應用於所有不同版本,10.0.3、11.0.2、12.0.3,ETC。
該倉庫具有一個.backportrc.json
文件,該文件由SQREN/Backport CLI使用,以使其更容易。這是一種基本上只能進行git cherry-pick
的工具,但是具有其他一些功能,例如自動創建分支和PR。
安裝node.js:https://nodejs.org/en/download/
在全球安裝backport
CLI
npm install -g backport
配置backport
工具。它需要github訪問令牌和用戶名~/.backport/config.json
。
更多信息在這裡:https://github.com/sqren/backport/blob/master/master/docs/configuration.md#global-config-backportconfigjson
公關合併後,結帳master
並拉動您要退回的新合併PR,然後運行backport
CLI。它是互動的,所以只需按照這些步驟即可。
git checkout master
git pull
# The tool is interactive. Choose the merge commit you want to backport
# and it takes care of the rest.
backport
這個項目為Unity社區提供了穩定的Newtonsoft.json體驗,對我來說是一個愛好項目,將永遠保持自由。
如果此工具給您一些您重視的東西,請考慮將硬幣重新放回此工具中。贊助我喝杯咖啡,我喝便宜的東西! ☕
此軟件包已根據MIT許可(MIT)許可
版權所有©2019 Kalle Jillheden(Jillejr)
https://github.com/jillejr/newtonsoft.json-for-unity
請參閱“許可證”中的完整版權。