web3j的maven插件

web3j maven插件用於基於solidity智能合約文件建立java類。java

用法

插件的基本配置將從src/main/resources獲取solidity文件,並將java類生成到src/main/java文件夾中。android

<build>
    <plugins>
        <plugin>
            <groupId>org.web3j</groupId>
            <artifactId>web3j-maven-plugin</artifactId>
            <version>0.3.7</version>
            <configuration>
                <soliditySourceFiles/>
            </configuration>
        </plugin>
    </plugins>
</build>

運行插件執行目標generate-sourcesgit

mvn web3j:generate-sources

配置

有幾個變量用於選擇solidity源文件,定義源目標路徑或更改包名稱。程序員

outputDirectory的配置優先於sourceDestinationgithub

入門

建立一個標準的java maven項目。將如下<plugin>配置添加到pom.xml文件中:web

<plugin>
    <groupId>org.web3j</groupId>
    <artifactId>web3j-maven-plugin</artifactId>
    <version>0.3.7</version>
    <configuration>
        <packageName>com.zuehlke.blockchain.model</packageName>
        <sourceDestination>src/main/java/generated</sourceDestination>
        <nativeJavaType>true</nativeJavaType>
        <outputFormat>java,bin</outputFormat>
        <soliditySourceFiles>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.sol</include>
            </includes>
        </soliditySourceFiles>
        <outputDirectory>
            <java>src/java/generated</java>
            <bin>src/bin/generated</bin>
            <abi>src/abi/generated</abi>
        </outputDirectory>
    </configuration>
</plugin>

將你的Solidity合約文件添加到文件夾src/main/resources中。確保solidity文件以.sol結尾。編程

開始生成過程:maven

> mvn web3j:generate-sources

[INFO] --- web3j-maven-plugin:0.1.2:generate-sources (default-cli) @ hotel-showcase ---
[INFO] process 'HotelShowCaseProxy.sol'
[INFO]     Built Class for contract 'HotelShowCaseProxy'
[INFO]     Built Class for contract 'HotelShowCaseV2'
[INFO]     Built Class for contract 'Owned'
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.681 s
[INFO] Finished at: 2017-06-13T07:07:04+02:00
[INFO] Final Memory: 14M/187M
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0

你能夠在目錄src/main/java/generated/中找到生成的java類。學習

下一步是與智能合約進行交互。請參閱web3j主頁中文版的智能合約部署和交互。區塊鏈

有關多模塊項目配置,請參閱@fcorneli的帖子。簡而言之:要獲取生成的java源文件,須要build-helper-maven-plugin配置。此外,多模塊項目中須要${basedir}前綴。

安利2個以太坊、比特幣區塊鏈相關的交互式在線編程實戰教程:

  • java以太坊開發教程,主要是針對java和android程序員進行區塊鏈以太坊開發的web3j詳解。
  • java比特幣開發教程,本課程面向初學者,內容即涵蓋比特幣的核心概念,例如區塊鏈存儲、去中心化共識機制、密鑰與腳本、交易與UTXO等,同時也詳細講解如何在Java代碼中集成比特幣支持功能,例如建立地址、管理錢包、構造裸交易等,是Java工程師不可多得的比特幣開發學習課程。

匯智網原創翻譯,轉載請標明出處。這裏是原文web3j的maven插件

相關文章
相關標籤/搜索