用戶支援:
對於使用者問題,請先在 GATK 論壇中尋找答案並提出問題。
一組用於操作高通量定序 (HTS) 資料和格式的 Java 命令列工具。
Picard 使用 HTSJDK Java 函式庫 HTSJDK 實現,支援存取高通量定序資料常用的檔案格式,例如 SAM 和 VCF。
從版本 3.0 開始,Picard 需要 Java 1.17。
git clone https://github.com/broadinstitute/picard.git
cd picard/
Picard 現在使用 gradle 建置。其中包含一個包裝腳本 ( gradlew
),它將在第一次呼叫時下載適當版本的 gradle。
若要建置包含所有相依性的完全打包、可執行的 Picard jar,請執行:
./gradlew shadowJar
build/libs
中。要運行它,命令是: java -jar build/libs/picard.jar
or
java -jar build/libs/picard-<VERSION>-all.jar
./gradlew jar
./gradlew clean
./gradlew test
./gradlew legacyTest --tests "*TestClassName*"
or
./gradlew barclayTest --tests "*TestClassName*"
運行legacyTest
使用舊版命令列解析器,而barclayTest
使用新解析器。
要將 Picard 的 HTSJDK 依賴項切換到不同的發布版本:
build.gradle
final htsjdkVersion = System.getProperty('htsjdk.version', 'VERSION')`
在 Picard 中進行開發期間,有時需要針對 HTSJDK 的未發布版本或分支進行本機建置。
要針對 HTSJDK 的 master 分支的未發布版本進行建置:
2.5.1-9-g5740ca1-SNAPSHOT
。您可以透過標籤或短 git commit 哈希進行搜尋。./gradlew shadowJar -Dhtsjdk.version=VERSION
,其中 VERSION 是您要使用的 HTSJDK 主分支快照的版本。若要針對尚未合併到 HTSJDK 主分支的 HTSJDK 版本進行建置:
./gradlew install printVersion
將該版本安裝到本機 Maven 儲存庫。記下最後列印的版本號。./gradlew shadowJar -Dhtsjdk.version=VERSION
,其中 VERSION 是您安裝到本機 Maven 儲存庫的 HTSJDK 版本。 有關如何建立新版本的 Picard 的完整說明請參閱此處
Picard 對從路徑提供者讀取的支援有限。目前僅支援google的api,並且只有少數工具支援此。要使用此支援運行,您需要使用 gradle 編譯 cloudJar 目標:
./gradlew cloudJar
然後按如下方式運行 picard:
java -jar build/lib/picardcloud.jar < Picard arguments starting from program >
例如:
java -jar build/lib/picardcloud.jar CrosscheckFingerprints
I=gs://sample1.vcf
I=gs://sample2.vcf
CROSSCHECK_BY=FILE
H=Haplotype_db.txt
O=crosscheck.out
或者,您可以透過捆綁 Google-Cloud jar 的 GATK 來運行該工具,因此應該「Just Work」。
在您的出版品中使用 Picard 工具時,請引用此儲存庫。
“皮卡德工具包。” 2019。 https://broadinstitute.github.io/picard/;布羅德研究所
@misc{Picard2019toolkit,
title = {Picard toolkit},
year = {2019},
publisher = {Broad Institute},
journal = {Broad Institute, GitHub repository},
howpublished = {url{https://broadinstitute.github.io/picard/}}
}
來自軟體註冊中心的識別碼越來越多地被期刊接受,如 (biotools:picard_tools) 或 (RRID:SCR_006525)。
Picard 正在遷移到語意版本控制。我們最終將嚴格遵守它,並在我們的API 發生重大更改時升級我們的主要版本,但在我們更清楚地定義我們的官方API 的構成之前,客戶應該假設每個版本都可能至少包含對公共方法的微小更改。
請參閱 Picard 文件以取得更多資訊。