日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

1.uap项目迁移到idea开发的详细教程(第壹篇)

發布時間:2023/12/14 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1.uap项目迁移到idea开发的详细教程(第壹篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

第壹篇主要是快速入門上手為主,后面會逐漸的詳細講解sg-uap和osgi的關系,以及osgi在idea里面的使用

會有大量的截圖,截圖與文字相結合一起描述遷移項目的過程

大體步驟:

  • 遷移的整體思路
  • 本人筆記本以及項目目錄的基本介紹
  • 前期的鋪墊和準備工作(含有簡單的tomcat配置)
  • idea中的項目文件(模塊)的各個配置
  • 項目啟動
  • 個人總結
  • 一、遷移的整體思路

    sg-uap是把eclipse封裝了,同時內置了osgi框架,osgi實現了多jar獨立加載,獨立部署;但是sg-uap也同時實現了spring框架,讓開發的子模塊能獨立且充分的利用spring框架,這就比較厲害了;

    但是萬變不離其宗,osgi框架是主體,我們只需要研究出,sg-uap是如何把osgi引入的以及如何又把各個子模塊加載進來就可以自行實現sg-uap項目遷移到idea了;

    我預先大概說明一下

    1.sg-uap項目都有一個主項目,此主項目其實為一個普通的web項目;

    2.web項目的作用有三個:

    a)每個公司都可以把自己個性化配置或者設置放在此處(主要是安全方面的過濾器)

    b)通過web.xml中的listener:“com.sgcc.uap.kernel.web.broker.UapModuleContextListener”,

    ? ? ? 把sg-uap的自己開發的一個“com.sgcc.uap.kernel.web_2.6.0.v20210421125300.jar”加載到java的內存中(具體里面的細節我會再后期的教程中詳細講解,不在此次講解)

    c)再通過web.xml中的servlet:“com.sgcc.uap.kernel.web.server.UapModuleContextServlet”,

    ? ? ? 把osgi框架加載到內存中,框架jar包就是“org.eclipse.osgi.jar”(默認是*/platform/Version2.0.0/thirdparty/org.eclipse.osgi.jar路徑)

    ? ? ? 這里也是經過了大量的初始化工作,才最終啟動了osgi的框架(具體里面的細節我會再后期的教程中詳細講解,不在此次講解)

    d)整體來講就是:先啟動web項目,web項目的web.xml配置文件,做了大量的初始化操作,然后啟動了osgi框架,整個系統就會開始逐步的把sg-uap的插件包以及自己的各個項目依次加載到內存中,最終啟動完畢。

    二、本人筆記本以及項目目錄的基本介紹

    1.JDK是1.6_x64的,idea是2018.3的,tomcat6,win7x64系統(系統不是重點,Mac筆記本也沒問題的,因為部分截圖和截圖工具是在mac上操作的)

    2.sg-uap客戶端在D盤的UAP Studio里面(2.8的版本)

    3.公司的開發項目在D盤的workspace下(sg-uap使用)

    4.遷移到idea時,我是在D盤的workspace4(由idea使用)里面建立了一個主項目文件夾(僅僅是文件夾,沒有任何被遷移的項目文件,因為這個新建的項目文件夾是為了引入workspace里面的項目文件夾)

    sg-uap的客戶端目錄圖片:(這里有個sguap-server文件夾記一下,后面有用「一大堆的插件包就在這里」)

    sg-uap使用的項目工作空間workspace圖片(dabd和dabd-schem是我需要使用的項目和子模塊項目,其他的都用uap打包成jar包了):

    idea使用的項目工作空間workspace4圖片(這個圖是一個比較細致的截圖,后面建立各種目錄時,可以參考這個截圖):

    三、前期的鋪墊和準備工作

    1.因為本次是一個簡單的遷移教程,所以我們需要把其他依賴但不用的子模塊都發布成jar包的形式(用uap的都懂我就不講了)

    2.用idea創建一個普通的java項目(建立到workspace4文件夾中,命名為uap-idea,刪除項目里面的空模塊),具體步驟看截圖

    選擇java》sdk=1.6》)(其他的不用選擇)》下一步

    ? ? 這里啥也不選擇》下一步

    ?? ? 這里新建項目,名稱為:uap-idea》(我的項目是在workspace4下面建立的)》完成 即可

    ?? ? 整個項目就是這個樣了,但我不用這些,我要把這個模塊刪除,然后導入uap的項目

    ?右上角(項目配置)》Project選項卡(這里就是一個簡單的配置看一下就好)

    ?? ? Modules》點擊uap-idea模塊》點擊上方的“減號”刪除此模塊

    ?? ? 刪除之后的結果:空空如也

    ?? ? 關閉“項目配置”后的界面

    ?

    3.引入workspace里面的主項目:dabd以及自己要開發的子模塊:dabd-schem(這個時候肯定會有很多警告和錯誤提示,跟著截圖一步一步來,就沒事了)

    ? ? “項目配置”?》Modules》ImportModules(導入模塊)》現在開始導入主項目“dabd”》點擊OK(確定)

    ?? ? 選擇“eclipse”模塊

    ?? ? 選擇“Keep project and module files in”,保持模塊還在原來的地方

    ? ? 此時idea已經識別出來了一個dabd的項目(到這里應更不會出問題。。。,有問題請截圖留言,我一定回復)?

    ?? ? 保持跟我一樣的選擇即可

    ? ? 此時主項目已經導入進來了,把src設置為Sources類型(好像可以自動識別),下面的開發項目類似(就不再文字描述,看圖即可)?

    ?? ? 下面開始導入開發的項目

    ?? ? 此時兩個必要的項目均已導入完畢,下面需要把報錯的地方逐一修復

    ? ? 此時此刻兩個項目產生的錯誤信息如下?

    ?? ? 先解決主項目:把項目依賴的東西除了jdk(jdk為1.6沒有的先自己導入一個來)以外的統統刪除(后面我們再重新引入)

    ?? ? 刪除后的結果,只剩下自己的模塊和一個jdk的引用

    ? ???開發項目也是如此,把該刪除的都刪除了

    ? ? 刪除后的結構如下?:此時idea也不再報錯信息了😂😂😂

    ? ? ? ? ?整體項目效果如下:下一步我們要開始引入tomcat和各種依賴包了(下面是重點

    ?

    ? 自己復制出來一個分tocmat6,我把自己的tomcat6命名為tomcat6-uap,并在tomcat6-uap里面的bin文件夾中新建一個sguap-server(不建此文件夾則無法啟動項目)

    ? ?在workspace4里面建立兩個文件夾:eclipse、tomcat6-uap(這個名字必須與前面的tomcat6-uap一致,不一致則無法啟動項目)

    ? ?把剛才獨立復制的tomcat6-uap放到eclipse文件夾中;把uap的客戶端目錄里面的sguap-server文件夾復制到workspace4下面的tomcat6-uap文件夾里面里面,

    ? ?并重命名為binsguap-server(不重命名此文件夾則無法啟動項目),細節請參考截圖

    ? ? ? ? ?把tomcat6-uap加入到idea中

    ? ? ? ? ?配置tomcat一系列操作:配置tomcat,點擊配置

    ? ? ? ? ?彈出選擇tomcat對話框

    ? ? ? ? ?選擇tomcat6-uap文件夾

    ? ? ? ? ?確定后,修改tomcat服務名稱為tocmat-dabd(之前是:Unnamed),到此tomcat配置結束(下面開始了各個依賴包的配置


    四、idea中的項目文件(模塊)的各個配置

    ? ? ? ? ?先把公共插件目錄下的WEB-IINF/lib下面的這個jar包放入到主項目的lib下面(不放入會導致項目啟動時會出發下載jar包的邏輯,先復制過來我們進入下一個環節)(后期會詳細講解為什么要這樣做)

    ? ? ? ? ?這是要項目里面依賴的jar包(主項目里面的lib和其他開發項目打成jar包集合目錄)

    ? ? ? ? ?先把主項目的自身的lib目錄添加為一個項目jar包庫

    ? ? ? ? ?命名為dabd-lib

    ? ? ? ? ?然后把其他輔助的項目jar包(repository-application-plugins)添加為一個項目jar包庫

    ? ? ? ? ?命名為dadb-plugins

    ? ? ? ? ?這里開始添加開發項目的lib,但是右鍵,功能是灰色的,沒法用(我這里不行不代表你那里不行),繼續看下面操作

    ? ? ? ? ?從項目配置》Libraries》點擊加號(添加一個新的jar包庫)(現在是剛才已經添加的那兩個:dabd-lib和dabd-plugins)

    ? ? ? ? ?找到開發項目的lib文件夾(選中文件夾和選中里面的jar包都行)

    ? ? ? ? ?點擊ok(確定)后會提示,是否把此jar包庫添加到指定的項目模塊中(因為這是開發項目的lib所以你可以添加到開發項目中,但你可以不加入,后面統一處理)

    ? ? ? ? ?我這里默認叫“common-lang3xxx”,您可以重命名一下

    ? ? ? ? ?我這里重命名為“dabd-scheme-lib”

    ? ? ? ? ?到此,我們已經完成了80%的工作,現在還需要在添加兩個jar包庫,再對兩個項目模塊進行配置,基本就差不多了

    ? ? ? ? ?現在開始添加公共的外部jar包庫(就是在workspace4/tomcat6-uap/binsguap-server/WEB-INF/repository/platform/Version2.0.0/里面的jar包庫)

    ? ? ? ? ?分別添加兩個文件夾:infrastructure、thirdparty

    ? ? ? ? ?此時把infrastructure添加進來,并把此jar包庫,添加到了兩個模塊中

    ? ? ? ? ?再把thirdparty也添加進來,同時添加到這兩個模塊中

    ? ? ? ? ?此時鋪墊工作全部完成:總共引入了五個jar包庫

    ? ? ? ? ?重要的配置:五個jar包庫在兩個模塊中引入情況

    ? ? ? ? dabd模塊里面:dabd-lib是compile模式,其他的都是provided模式!!!

    ? ? ? ? dabd-scheme模塊:dadb-schem-lib是compile模式,其他都是provided模式!!!

    ? ? ? ? ?這里有個需要注意的地方:把dabd-schem模塊的paths設置為bin目錄(這里可能是默認的,如果是這樣就不用改了,如果不是請參考我這個截圖),這里如果不是bin,則無法實現熱更新

    ? ? ? ? 把dabd項目配置為一個WEB工程(這里會的就不用看了,不會的請看下面的截圖)

    ? ? ? ? 打開項目配置》Facets》添加》Web模式

    ? ? ? ? 選中dabd項目(因為只有dabd項目是標準的web項目結構)

    ? ? ? ? 這里有兩個地方需要注意:(非常關鍵:好多小伙伴就是死在這個配置上面的)

    ? ? ? ? 兩個配置:一個是配置web.xml的文件路徑,一個是配置WebContent的路徑(就參考我的配置來就行)

    ? ? ? ? 配置完后,點擊右下角“Create Artifact”(如果沒有點擊ok就行,然后參考下面Artifacts的配置截圖)

    Artifacts這里的配置如下:主要是把web功能的編譯結構確定了:里面有dadb的類編譯路徑、web工程根目錄路徑、web.xml的配置路徑、項目依賴的jar包庫路徑

    ? ? ? ? ?這里web工程的最終配置圖(這里項目構建名稱改為了:dabd)(這里沒弄好的話,仔細對比你的配置和我的配置截圖)

    ? ? ? 一切模塊配置就緒!!!!!!


    五、項目啟動

    ? ? ? ? tocmat里面添加要發布的web工程(從artifacts里面來的)

    ? ? ? ?就是dabd這個web工程(也只有這一個),下面的應用上下文名稱是/dabd

    ? ? ? ? ?我這里出現了啟動時,內存不足,所以需要配置一下VM的啟動參數:-Xms1024m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=512m

    ? ? ? ? ?tocamt配置就緒

    ? ? ? ? ?啟動tocmat:這里機器性能有位關鍵(mac電腦40秒,win配置好的話應該是一分鐘左右)

    ? ? ? ? 在控制臺輸入ss,回車,控制臺輸出了osgi的啟動模塊信息

    ? ? ? ? 項目瀏覽器輸入訪問地址即可(idea中tomcat啟動完畢后會自動打開瀏覽器)

    ? ? ? ? 輸入系統的賬號密碼,進入系統

    ? ? ? ? 最終系統功能頁面?

    ? ? ? ? 到此整個的uap遷移到idea結束!!!

    六、個人總結

    ? ? ? ?本次遷移是一個痛并快樂的遷移。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    ? ? ? ?如果您對uap和idea用的都很溜,那么整個過程應該對您來說會比較順利,其實在我們抽絲剝繭式的把uap中還有osgi框架這塊搞明白了,很多事情就比較簡單了

    ? ? ? ?提供一個osgi框架的pdf下載地址:https://dwd.jb51.net/201605/books/OSGiyl_jb51.rar,我們就是通過熟讀這個來把uap的項目遷移到了idea中。。。。。。。。

    ? ? ? ?后期會編寫:我們是如何從sg-uap中抽絲剝繭一步步,解讀osgi框架的過程,請等待。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    ? ? ? 有問題請留言。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    總結

    以上是生活随笔為你收集整理的1.uap项目迁移到idea开发的详细教程(第壹篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美一级视频 | 成人区精品一区二区婷婷 | 欧美整片在线 | 狠狠躁天天躁综合网 | 体内射精一区二区 | 人人射影院 | 高清无码一区二区在线观看吞精 | 住在隔壁的她动漫免费观看全集下载 | 全部免费毛片在线播放高潮 | 国产精品扒开腿做爽爽 | 丰满少妇高潮久久三区 | 99久久精品国产成人一区二区 | 亚洲毛片大全 | 一级少妇女片 | 中文字幕在线观看视频网站 | 国产偷v国产偷v亚洲高清 | 暴力调教一区二区三区 | 狂野欧美性猛交xxⅹ李丽珍 | 国产黑丝在线视频 | 中文不卡av | 黄色片子看看 | 精品一区李梓熙捆绑 | 99在线国产| 1024精品一区二区三区日韩 | 小仙女av| 国产成人视屏 | 青青青在线观看视频 | 久久.com| 中国少妇毛片 | 91av俱乐部 | 天天躁夜夜操 | 国产在线观看一区 | 进去里视频在线观看 | 岛国激情| 六月丁香啪啪 | 精品国产第一页 | 日日夜夜狠狠干 | 欧美成人精品网站 | 中文字幕欧美专区 | 视频在线观看视频 | 91视频福利| 日韩精品在线免费观看视频 | 天天色播| 林由奈在线观看 | 九九天堂网 | 少妇av在线| 91天堂在线视频 | 91久久国产综合久久91精品网站 | 一本大道熟女人妻中文字幕在线 | 午夜福利三级理论电影 | 欧美a v在线播放 | 国产精品搬运 | 中文字幕一区二区在线观看视频 | 高潮videossex高潮 | 尤物视频免费观看 | 久草操| 成人在线视频免费播放 | 国产成人av一区二区三区在线观看 | 99精品福利| 午夜伦理一区二区 | 久久成人精品一区二区 | 国产一区免费在线观看 | 免费av一区二区三区 | 亚洲婷婷综合网 | 国产精品日本 | 欧美成人777| 激情拍拍拍 | 亚洲国产麻豆 | 九九九网站 | 五月天综合网站 | 91黄色在线观看 | 日本va在线| 国产视频aaa | 毛片基地在线播放 | 天天想你在线观看完整版电影高清 | 久草最新| 国产区精品视频 | 国产精品久久久久久久久久久不卡 | 99草在线视频 | 色就是色亚洲色图 | 91视频色| 国产精品大片 | 欧美动态色图 | 午夜精品一区二区三区在线 | 国产山村乱淫老妇女视频 | 操三八男人的天堂 | 美女啪啪一区二区 | 99精品视频在线免费观看 | 黄色片在线免费观看 | 国产欧美一区在线观看 | 尤物视频在线播放 | 日本少妇裸体做爰 | 亚洲v欧美v另类v综合v日韩v | 国产亚洲小视频 | 亚洲首页 | 女性高潮视频 | 一级黄色免费看 | 久久久久久久美女 | 亚洲精品久久久久av无码 |