鴻蒙NEXT開發:工具常用命令—install

?安裝三方庫。

命令格式

ohpm install [options] [[<@group>/]<pkg>[@<version> | @tag:<tag>]] ...
ohpm install [options] <folder> 
ohpm install [options] <har file>
alias: i

說明

  • @group:三方庫的命名空間,可選。
  • pkg:三方庫名稱,可選;當 install 后面沒有指定三方庫名稱時,會根據當前目錄下 oh-package.json5 定義的依賴關系進行全量安裝。
  • version:三方庫的版本號,可選。
  • tag:三方庫的標簽,標簽會標記三方庫的某個版本號,可選。

功能描述

用于安裝指定組件或 oh-package.json5 文件中所有的依賴。如果存在 oh-package-lock.json5 文件,安裝將取決于 oh-package-lock.json5 文件中鎖定的版本。

  • ohpm install

    將依賴項安裝到本地 oh_modules 文件夾中,并將所有依賴項作為 dependencies,寫入 oh-package.json5 文件。

  • ohpm install <folder>

    安裝本地文件夾,則默認會創建一個軟鏈接指向該文件夾。如果安裝不想以創建軟鏈接的形式,則需要增加 --no-link 參數。

    示例:

ohpm install ../folder
  • ohpm install <har file>

    安裝壓縮包,請注意壓縮包的要求:

    1. 文件名必須使用 .tar, .tar.gz, .tgz, .har 作為擴展名;
    2. 壓縮包里面包含子文件 package;
    3. 子文件夾 package 下面必須包含 oh-package.json5 文件,且配置文件中必須有 name 和 version 字段。
    4. ohpm install ./package.har

? ? ? ?示例:

ohpm install ./package.har

Options

all

  • 默認值:false
  • 類型:Boolean

可以在 install 命令后面配置 --all 參數,安裝您項目下所有模塊在其 oh-package.json5 中配置的全部依賴項。

save-dynamic

  • 默認值:false
  • 類型:Boolean

可以在 install 命令后面配置 --save-dynamic 參數,安裝的三方庫信息將會寫入 oh-package.json5 文件的 dynamicDependencies 中。

save-dev

  • 默認值:false
  • 類型:Boolean

可以在 install 命令后面配置 --save-dev 參數,安裝的三方庫信息將會寫入 oh-package.json5 文件的 devDependencies 中。

save-prod

  • 默認值:true
  • 類型:Boolean

可以在 install 命令后面配置 --save-prod 參數,安裝的三方庫信息將會寫入 oh-package.json5 文件的 dependencies 中,這是 ohpm 的默認行為。

no-save

  • 默認值:false
  • 類型:Boolean

可以在 install 命令后面配置 --no-save 參數,安裝的三方庫信息將不會寫入 oh-package.json5 文件中。

  • 默認值:false
  • 類型:Boolean

可以在 install 命令后面配置 --no-link 參數,安裝本地文件夾時,則不會創建一個軟鏈接指向該文件夾,而是將依賴項將作為常規依賴項打包和安裝。

prefix

  • 默認值:""
  • 類型: string

可以在 install 命令后面配置 --prefix <string> 參數,用來指定包的根目錄,該目錄下必須存在 oh-package.json5 文件。

parameterFile

  • 默認值:無
  • 類型: string
  • 別名:pf

可以在 install 命令后面配置 --parameterFile <string> 參數,用來指定參數化配置文件地址。使用該命令前需保證項目級別的oh-package.json5中已配置parameterFile參數。

registry

  • 默認值:""
  • 類型:URL

可以在 install 命令后面配置 --registry <registry> 參數,指定倉庫地址;如果沒有指定,默認從配置中獲取倉庫地址。

fetch_timeout

  • 默認值:60000
  • 類型: Number
  • 別名:ft

可以在 install 命令后面配置 -ft <number> 或者 --fetch_timeout <number> 參數,設置操作的超時時間,如果沒有指定,默認超時時間為60000ms。

strict_ssl

  • 默認值:true
  • 類型: Boolean

可以在 install 命令后面配置 --strict_ssl true 參數,校驗 https 證書;配置 --strict_ssl false 參數,不校驗 https 證書。

max_concurrent

  • 默認值:50
  • 類型: Number
  • 別名:mc

可以在 install 命令后面配置 -mc <number> 或者 --max_concurrent <number> 參數,設置最大活動并發請求數(即ohpm操作期間任何時間的最大網絡請求數),如果沒有指定,默認最大并發請求數為50次。

retry_times

  • 默認值:1
  • 類型: Number
  • 別名:rt

可以在 install 命令后面配置 -rt <number> 或者 --retry_times <number> 參數,設置操作失敗前的最大重試次數,如果沒有指定,默認最大重試次數為1次。

retry_interval

  • 默認值:1000
  • 類型: Number
  • 別名:ri

可以在 install 命令后面配置 -ri <number> 或者 --retry_interval <number> 參數,設置重試失敗前的等待時間,如果沒有指定,默認等待時間為1000ms。

experimental-concurrently-safe

  • 默認值:true
  • 類型:Boolean

可以在 install 命令后面配置 --experimental-concurrently-safe 參數,并發安全地安裝依賴。這是一個實驗性選項。

target_path

  • 默認值:無
  • 類型:string

可以在 install 命令后面配置 --target_path <string> 參數,用來指定在特定目標產物target語境下各模塊的依賴配置文件(oh-package.json5)的路徑。在執行ohpm install時,ohpm會優先安裝<target_path>/<moduleName>/oh-package.json5文件中依賴。詳情參見target_path。

示例

安裝 lottie 三方庫,執行以下命令:

ohpm install @ohos/lottie

結果示例:

oh_modules

ohpm 1.0.0~1.3.0

使用 ohpm 安裝時,項目中各 Module 的依賴項被統一安裝在 Module 根目錄下的 oh_modules 目錄中,Module 中所有直接依賴和間接依賴都以平鋪的方式存儲在 oh_modules 目錄下的 .ohpm 目錄中,Module 的直接依賴則以軟鏈接的方式添加進 oh_modules 文件夾的根目錄中。因此,相同依賴項只會安裝一次,從而減少磁盤使用空間,加快安裝速度。

ohpm 1.4.x

ohpm 客戶端從 1.4.0 版本開始,同一項目下所有 Module 的依賴都會被統一安裝在項目根目錄下的 oh_modules 目錄中,同時會在項目各 Module 根目錄下的 oh_modules 中生成該 Module 的直接依賴的軟連接,這些軟連接會指向項目根目錄下 oh_modules 中的 .ohpm 目錄下依賴實際存儲目錄。

target_path

為了支持在構建過程中針對不同的產物定制不同的依賴,hvigor會在構建時根據目標產物target為各模塊自動生成定制的依賴配置文件(oh-package.json5),開發者可以在ohpm install時使用target_path選項來指定在特定目標產物target語境下各模塊的依賴配置文件(oh-package.json5)的路徑。

ohpm會優先安裝<target_path>/moduleName/oh-package.json5文件中配置的依賴,并在<project_root>/moduleName下生成對應的oh-package-<targetName>-lock.json5文件。當指定target_path時,默認會開啟依賴版本沖突自動處理功能,在依賴安裝完成后,ohpm還會根據實際安裝的依賴版本在<target_path>/resolve-conflict/moduleName目錄下生成新的oh-package.json5文件。

target_path目錄結構示例:

+---default                   // <targetName>默認為default
|   |   dependencyMap.json5   // 記錄在特定target語境下的各模塊依賴配置文件路徑
|   +---module1               // 在特定target語境下某模塊的依賴配置文件的存儲目錄,與原模塊根目錄同名
|   |       oh-package.json5  // 在特定target語境下某模塊依賴配置文件
|   +---module2
|   |       oh-package.json5
|   |   oh-package.json5      // 在特定target語境下生成的工程級依賴配置文件

dependencyMap.json5內容示例:

{targetName: "default",rootDependency: "./oh-package.json5"dependencyMap: {"module1": "./module1/oh-package.json5","module2": "./module2/oh-package.json5"}
}

ohpm install指定target_path時依賴配置優先級說明:

1、<target_path>/dependencyMap.json5中rootDependency配置的oh-package.json5的優先級高于<project_root>/oh-package.json5。

2、.ohpmrc中projectPackageJson指定的項目級配置文件中overrides、overrideDependencyMap配置優先級同時高于<target_path>/dependencyMap.json5中rootDependency配置的oh-package.json5中對應配置 和 <project_root>/oh-package.json5中對應配置。

3、<target_path>/moduleName/oh-package.json5的優先級高于overrideDependencyMap中的依賴配置文件。

4、overrides中的依賴版本優先級高于<target_path>/moduleName/oh-package.json5中對應的依賴版本。

注意

僅當<target_path>/dependencyMap.json5中targetName的值不為空且不等于'default'時,<project_root>/moduleName目錄下生成的lock文件名才會變更為:oh-package-targetName-lock.json5。


最后

有很多小伙伴不知道學習哪些鴻蒙開發技術?不知道需要重點掌握哪些鴻蒙應用開發知識點?但是又不知道從哪里下手,而且學習時頻繁踩坑,最終浪費大量時間。所以本人整理了一些比較合適的鴻蒙(HarmonyOS NEXT)學習路徑和一些資料的整理供小伙伴學習

點擊領取→純血鴻蒙Next全套最新學習資料(安全鏈接,放心點擊

希望這一份鴻蒙學習資料能夠給大家帶來幫助,有需要的小伙伴自行領取,限時開源,先到先得~無套路領取!!

一、鴻蒙(HarmonyOS NEXT)最新學習路線

?

有了路線圖,怎么能沒有學習資料呢,小編也準備了一份聯合鴻蒙官方發布筆記整理收納的一套系統性的鴻蒙(OpenHarmony )學習手冊(共計1236頁)與鴻蒙(OpenHarmony )開發入門教學視頻,內容包含:(ArkTS、ArkUI開發組件、Stage模型、多端部署、分布式應用開發、音頻、視頻、WebGL、OpenHarmony多媒體技術、Napi組件、OpenHarmony內核、Harmony南向開發、鴻蒙項目實戰等等)鴻蒙(HarmonyOS NEXT)…等技術知識點。

獲取以上完整版高清學習路線,請點擊→純血版全套鴻蒙HarmonyOS學習資料

二、HarmonyOS?Next 最新全套視頻教程

?

三、《鴻蒙 (OpenHarmony)開發基礎到實戰手冊》

OpenHarmony北向、南向開發環境搭建

?

《鴻蒙開發基礎》

  • ArkTS語言
  • 安裝DevEco Studio
  • 運用你的第一個ArkTS應用
  • ArkUI聲明式UI開發
  • .……?

《鴻蒙開發進階》

  • Stage模型入門
  • 網絡管理
  • 數據管理
  • 電話服務
  • 分布式應用開發
  • 通知與窗口管理
  • 多媒體技術
  • 安全技能
  • 任務管理
  • WebGL
  • 國際化開發
  • 應用測試
  • DFX面向未來設計
  • 鴻蒙系統移植和裁剪定制
  • ……

?

《鴻蒙進階實戰》

  • ArkTS實踐
  • UIAbility應用
  • 網絡案例
  • ……

?

四、大廠面試必問面試題

?

五、鴻蒙南向開發技術

?

六、鴻蒙APP開發必備

?

七、鴻蒙生態應用開發白皮書V2.0PDF

?


完整鴻蒙HarmonyOS學習資料,請點擊→純血版全套鴻蒙HarmonyOS學習資料

總結
總的來說,華為鴻蒙不再兼容安卓,對中年程序員來說是一個挑戰,也是一個機會。只有積極應對變化,不斷學習和提升自己,他們才能在這個變革的時代中立于不敗之地。?

? ? ? ? ? ? ? ? ? ? ? ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35857.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35857.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35857.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

sys.stdin對象——實現標準輸入

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 語法參考 sys.stdin是一個標準化輸入對象&#xff0c;可以連續輸入或讀入文件所有內容&#xff0c;不結束&#xff0c;不能直接使用。輸入完成后&am…

print()函數——打印輸出

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 print()函數是Python編程最常見的函數&#xff0c;常用于輸出程序結果&#xff0c;默認輸出到屏幕&#xff0c;也可以輸出到指定文件。 語法參考 pr…

吉他譜制作軟件哪個好 吉他彈唱譜制作軟件推薦

在市面上存在著多種吉他譜制作軟件&#xff0c;如何選擇一款適合自己需求的軟件成為了許多人面臨的挑戰。下面來看看吉他譜制作軟件哪個好&#xff0c;吉他彈唱譜制作軟件推薦的相關內容。 一、吉他譜制作軟件哪個好 吉他譜制作軟件在現代音樂創作中扮演著重要角色&#xff0c…

調頻信號FM的原理與matlab與FPGA實現

平臺&#xff1a;matlab r2021b&#xff0c;vivado2023.1 本文知識內容摘自《軟件無線電原理和應用》 調頻(FM)是載波的瞬時頻率隨調制信號成線性變化的一種調制方式&#xff0c;音頻調頻信號的數學表達式可以寫為&#xff1a; Fm頻率調制&#xff0c;載波的幅度隨著調制波形…

open()函數——打開文件并返回文件對象

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 open()函數用于打開文件&#xff0c;返回一個文件讀寫對象&#xff0c;然后可以對文件進行相應讀寫操作。 語法參考 open()函數的語法格式如下&…

用Idea運行Python失敗,同級目錄下的模塊無法導入試試這個方法

哈嘍,大家好,我是木頭左! 在Python編程中,經常會遇到需要導入同級目錄下的模塊的情況。然而,有時候在使用IDEA運行Python時,可能會遇到無法導入同級目錄下的模塊的問題。這個問題可能是由于Python解釋器沒有正確識別到同級目錄下的模塊導致的。那么,如何解決這個問題呢?…

【K8s】專題六(2):Kubernetes 穩定性之健康檢查

以下內容均來自個人筆記并重新梳理&#xff0c;如有錯誤歡迎指正&#xff01;如果對您有幫助&#xff0c;煩請點贊、關注、轉發&#xff01;歡迎掃碼關注個人公眾號&#xff01; 目錄 一、基本介紹 二、工作原理 三、探針類型 1、存活探針&#xff08;LivenessProbe&#x…

docker入門配置

1、創建配置鏡像 由于國內docker連接外網速度慢&#xff0c;采用代理 vi /etc/docker/daemon.json添加以下內容 {"registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com","https://dockerproxy.com","https://hub-mirror.c.163.co…

SOA和ESB介紹

SOA&#xff08;面向服務的架構&#xff09; 面向服務的架構&#xff08;Service-Oriented Architecture&#xff0c;SOA&#xff09;是一種設計理念&#xff0c;用于構建松耦合的、可互操作的、模塊化的服務。在SOA架構中&#xff0c;應用程序被劃分為一系列的服務&#xff0c…

電腦屏幕花屏怎么辦?5個方法解決問題!

“我剛剛打開電腦就發現我的電腦屏幕出現了花屏的情況。這讓我很困惑&#xff0c;我應該怎么解決這個問題呢&#xff1f;求幫助。” 在這個數字時代的浪潮中&#xff0c;電腦早已成為我們生活中不可或缺的一部分。然而&#xff0c;當你正沉浸在緊張的游戲對戰中&#xff0c;或是…

從零到一學FFmpeg:AVCodecContext 結構體詳析與實戰

文章目錄 前言一、函數原型二、功能描述三、使用場景四、使用實例 前言 avio_open是FFmpeg庫中的一個函數&#xff0c;用于打開一個I/O&#xff08;輸入/輸出&#xff09;上下文&#xff0c;以便于讀寫文件、網絡流或其他類型的媒體數據源。這個函數是FFmpeg進行文件操作的基礎…

谷歌上搞下來的,無需付費,可以收藏!

在數字化時代&#xff0c;我們越來越依賴于智能設備來獲取信息和知識。中國智謀App正是這樣一款應用&#xff0c;它將中國古代的智慧與謀略書籍帶入了我們的移動設備&#xff0c;讓我們能夠隨時隨地學習和領悟。而且提供文言文的原文和譯文。 軟件下載方式&#xff1a;谷歌上搞…

39.右鍵彈出菜單管理游戲列表

上一個內容&#xff1a;38.控制功能實現 以 ??????? 38.控制功能實現 它的代碼為基礎進行修改 效果圖&#xff1a; 點擊設置之后的樣子 點擊刪除 點擊刪除之后的樣子 實現步驟&#xff1a; 首先添加一個菜單資源&#xff0c;右擊項目資源選擇下圖紅框 然后選擇Menu 然…

【C語言】字符/字符串+內存函數

目錄 Ⅰ、字符函數和字符串函數 1 .strlen 2.strcpy 3.strcat 4.strcmp 5.strncpy 6.strncat 7.strncmp 8.strstr 9.strtok 10.strerror 11.字符函數 12. 字符轉換函數 Ⅱ、內存函數 1 .memcpy 2.memmove 3.memcmp Ⅰ、字符函數和字符串函數 1 .strlen 函數原型&#xff1a;…

《計算機英語》 Unit 6 Internet 互聯網

Section A Internet 互聯網 The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite (TCP/IP) to link several billion devices worldwide. 互聯網是一個全球性的互連計算機網絡系統&#xff0c;使用標準的互聯…

python多線程加速web服務

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、代碼實現&#xff1f;1.引入庫2.讀入數據 總結 前言 提示&#xff1a;這里可以添加本文要記錄的大概內容&#xff1a; 1 提示&#xff1a;以下是本篇文章…

15、Spring~容器啟動過程

15、Spring~容器啟動過程 容器啟動過程AnnotationConfigApplicationContext類的四個構造器&#xff1a;啟動過程詳解無參構造方法refresh()方法prepareRefresh()方法prepareBeanFactory()方法invokeBeanFactoryPostProcessors()方法registerBeanPostProcessors()方法finishBean…

蘋果CMS-V10 搭建教程踩坑,跳過部分驗證

我突發奇想,想要安裝一個CMS 蘋果CMS搭建教程-CSDN博客 然后就有了下面的問題 結論是zip相關依賴未安裝, 通過 apt install php-zip, 重新打開安裝頁面,同樣如此 最后依據某個網站提示,修改 "\\192.168.1.200\root\var\www\html\maccms\application\install\control…

JSR 303全解析:如何在Java項目中實施高效數據校驗

1. JSR 303是什么&#xff1f; JSR 303&#xff08;Java Specification Request 303&#xff09;&#xff0c;也稱為Bean Validation&#xff0c;是Java中的一個規范&#xff0c;用于定義Java對象的校驗規則。 1.1 JSR 303的主要功能 注解驅動&#xff1a;通過注解直接在Jav…

多家國產大模型提供OpenAI API服務替代方案,谷歌將推出明星網紅AI聊天機器人

ChatGPT狂飆160天&#xff0c;世界已經不是之前的樣子。 更多資源歡迎關注 1、OpenAI終止對中國提供服務 6月25日凌晨&#xff0c;多個用戶收到OpenAI的推送郵件&#xff0c;信中稱&#xff0c;自今年7月9日起&#xff0c;將開始阻止來自非支持國家和地區的API&#xff08;應…