日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

java查找哪些jar與哪些java源文件一起使用

 印度阿三17 2019-07-09

我是我公司的新配置經(jīng)理,我正在啟動一個項(xiàng)目來清理我們的大部分構(gòu)建過程.

我們已經(jīng)在一個Subversion項(xiàng)目中收集了大量的罐子.有些人將這些罐子復(fù)制到他們的項(xiàng)目中.其他人在他們的項(xiàng)目中將SVN:External放到了這個目錄中.其他人在這些罐子里有一種復(fù)雜的復(fù)制方式.這些是我們想要使用的唯一的罐子.

我要搬到Ivy,也許是Maven.我已經(jīng)設(shè)置了一個Maven存儲庫,并且已經(jīng)識別出這些jar的GroupId,ArtifactId和Version,并且已經(jīng)記錄了如何通過Ivy和Maven配置訪問所需的那些.

我想查看所有項(xiàng)目的源文件,查找所有import語句,并將這些導(dǎo)入與這些jar包含的所有類進(jìn)行比較.

我想找到一組給定來源直接調(diào)用的所有罐子.例如,如果jar包含:

import org.apache.commons.beanutils.*

我知道它需要commons-beanutils.jar(版本1.6).我也知道它需要commons-logging.jar,但我會讓Maven和Ivy處理這個問題.我只是想告訴開發(fā)人員他們創(chuàng)建pom.xml或ivy.xml時,他們需要在他們的pom.xml或ivy.xml文件中包含common-beanutils#common-beansutil#1.6.

我知道這不是一個完整的清單.我知道運(yùn)行時需要jar,但不能編譯.我也知道有些類可以使用多個罐子.我現(xiàn)在也開發(fā)人員可以這樣做:

import org.apache.commons.*;

這將與幾十個罐子相匹配,什么都不告訴我. (也許有辦法弄清楚Java源文件中實(shí)際使用了哪些類).

我可以寫一個可能會做到這一點(diǎn)的Python或Perl腳本,但我希望已經(jīng)有一些東西可以節(jié)省我?guī)讉€小時的工作.我知道JBoss的TattleTale,但文檔似乎說它只適用于jar并顯示jar之間的依賴關(guān)系等等.我對此并不感興趣.我只是想知道我們的來源正在調(diào)用什么罐子,讓Ivy和Maven處理更深層的依賴關(guān)系.

有這樣的工具嗎?

附錄

只是為了更具體.這是一個古老的項(xiàng)目.事實(shí)上,有50個左右的項(xiàng)目.我們知道一個特定的項(xiàng)目需要運(yùn)行20個罐子,像TattleTail這樣的工具可以通過并向您展示整個數(shù)據(jù)分析.

但是,讓我們從開發(fā)人員的角度來看待它.我有一個問題,我找到了一個可以解決我的問題的開源項(xiàng)目.我閱讀了文檔,編寫了我的代碼并導(dǎo)入了我需要的類.我知道包含這些類的開源項(xiàng)目的jar,這就是我所知道的.

我想要做的是回到原始開發(fā)人員的心態(tài):我在這個項(xiàng)目中使用了這些類,我需要這5個罐子.那些5個罐子可能還需要另外15個罐子,這是Ivy / Maven現(xiàn)在要處理的東西.我們知道該計(jì)劃需要的20個罐子.我只想要開發(fā)人員最初在他們的代碼中引用的5.

這是為了幫助開發(fā)人員編寫他們的pom.xml或ivy.xml.我不希望他們將所有20個jar放在那個pom.xml或ivy.xml文件中 – 只需要他們需要的五個.

這只是一個起點(diǎn).他們可能導(dǎo)入了com.foo.bar.bar.foo,該類位于foo-all.jar,foo-client.jar和bar-talk.com中.開發(fā)人員必須決定他們的項(xiàng)目需要哪一個.

這是我們編程中的一個巨大的范式轉(zhuǎn)換,但我們正在失去對jar和版本的跟蹤,并確保所有這些項(xiàng)目可以相互通信.使用Ivy / Maven將大大簡化這一混亂.

解決方法:

Tattletale最終給了我第一級依賴項(xiàng),這是構(gòu)建我的ivy.xml或pom.xml文件所需要的.它偶爾會錯過一兩個,但除此之外它的效果還不錯.

來源:https://www./content-1-311501.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多