Tuesday, January 13, 2026
No Result
View All Result
The Crypto HODL
  • Home
  • Bitcoin
  • Crypto Updates
    • Altcoin
    • Ethereum
    • Crypto Updates
    • Crypto Mining
    • Crypto Exchanges
  • Blockchain
  • NFT
  • DeFi
  • Web3
  • Metaverse
  • Regulations
  • Scam Alert
  • Analysis
  • Videos
Marketcap
  • Home
  • Bitcoin
  • Crypto Updates
    • Altcoin
    • Ethereum
    • Crypto Updates
    • Crypto Mining
    • Crypto Exchanges
  • Blockchain
  • NFT
  • DeFi
  • Web3
  • Metaverse
  • Regulations
  • Scam Alert
  • Analysis
  • Videos
No Result
View All Result
The Crypto HODL
No Result
View All Result

How to compile smart contracts against different EVM versions using Web3j

February 28, 2025
in Web3
Reading Time: 3 mins read
0 0
A A
0
Home Web3
Share on FacebookShare on Twitter


What’s web3j-solidity-gradle plugin?

Web3j-solidity-gradle-plugin is a useful device and extension of web3j library. You should use it for integrating Solidity good contract compilation into your Gradle venture. It simplifies the method of constructing and managing good contracts inside a Java or Android venture that makes use of Web3j. It presents varied configurations for compiling and makes use of web3j-sokt behind the scenes.

Web3j-Sokt is a Kotlin wrapper for the Solidity compiler (solc). Given a solidity file, it might probably establish the best compiler model to make use of from the pragma assertion on the prime of the file. It may well then obtain, set up and invoke the compiler. Moderately than utilizing Dockerized variations of Solc, Sokt makes use of native builds and is suitable with Mac, Home windows and Linux.

For extra data on web3j-sokt verify right here – https://github.com/hyperledger/web3j-sokt

Find out how to use web3j-solidity-gradle plugin?

Step 1: Apply the Plugin

First, you could apply the web3j-solidity-gradle plugin to your Gradle venture. You are able to do this by including the next traces to your construct.gradle file:

plugins {
id ‘org.web3j.solidity.gradle.plugin’ model ‘x.y.z’
}

Step 2: Configure the Plugin

After making use of the plugin, you’ll be able to configure the compilation flags. Right here is an instance configuration:

solidity {
// Elective: Specify the Solidity compiler model
solcVersion = ‘v0.5.16’

// Elective: Configure the optimizer
outputComponents = [BIN, ABI, ASM_JSON]
optimizeRuns = 500
}

Step 3: Add Solidity Information

By default, all .sol recordsdata in $projectDir/src/primary/solidity and $projectDir/src/check/solidity shall be processed by the plugin. To specify and add completely different supply units, use the sourceSets DSL. You too can set your most well-liked output listing for compiled code.

sourceSets {
primary {
solidity {
srcDir {
“my/customized/path/to/solidity”
}
output.resourcesDir = file(‘out/bin/compiledSol’)
}
}
}

Step 4: Construct Contracts

To compile your Solidity contracts, run the next command in your terminal:

./gradlew buildOr you’ll be able to simply run the compileSolidity gradle activity 

./gradlew compileSolidity

This command triggers the compilation of Solidity contracts and generates binary and ABI recordsdata within the specified vacation spot listing.

Step 5: Combine with Web3j

After compiling your contracts, you could wish to generate Java wrappers to work together with them. You possibly can combine the web3j library to your venture and use the Web3j CLI or Web3j Gradle plugin to generate these wrappers. Right here’s a information on how one can add Web3j-gradle-plugin to your Gradle venture: https://docs.web3j.io/4.11.0/plugins/web3j_gradle_plugin/

Then, use the plugin to generate Java wrappers that correspond to your good contracts.

Step 6: Run and Check

Lastly, use the generated Java wrappers in your Java or Android venture to deploy, work together with, and check your good contracts.

Introducing New Options within the Web3j-Solidity-Gradle Plugin

The Web3j Solidity Gradle plugin permits for outlining completely different supply units. Nonetheless, the Solidity compilation configuration is international. It can’t be set individually for every supply set.

This is an instance of how supply units together with solidity flags are at the moment configured:

sourceSets {
primary {
solidity {
srcDir {
“my/customized/path/to/solidity”
}
output.resourcesDir = file(‘out/bin/compiledSol’)
}
}
}

solidity {
outputComponents = [BIN, ABI, ASM_JSON]
optimizeRuns = 500
}

This method may be problematic for customers who need completely different configurations for compiling good contracts throughout supply units, as compilation settings are restricted to international values.

To deal with this, we’ve launched new options that allow customers configure parameters like Solidity model, EVM model, optimization settings, and optimization runs per supply set.

Instance with the brand new function:

sourceSets {
primary {
solidity {
srcDir {
“my/customized/path/to/solidity”
}
output.resourcesDir = file(‘out/bin/compiledSol’)
setEvmVersion(‘ISTANBUL’)
setOptimize(true)
setOptimizeRuns(200)
setVersion(‘0.8.12’)
}
}
}

Builders who wish to discover this new performance can comply with the associated pull request: https://github.com/hyperledger/web3j-solidity-gradle-plugin/pull/69. These options shall be accessible within the upcoming launch of the Web3j-Solidity-Gradle plugin v0.4.2.

Customers and builders can discover the venture code supply right here – https://github.com/hyperledger/web3j-solidity-gradle-plugin

The Web3j-Solidity-Gradle plugin gives a seamless growth expertise from good contract coding to Java utility integration. The brand new options let customers apply completely different compilation settings for good contracts throughout varied supply units, making it simpler to handle project-specific necessities successfully.



Source link

Tags: compileContractsEVMSmartVersionsWeb3j
Previous Post

Marathon reports record $337.2 million net income in Q1 2024

Next Post

Trader Says Bitcoin (BTC), Chainlink (LINK) and One Ethereum Rival Setting Up for Rallies

Related Posts

What Is Venice AI? The Privacy-Focused Chatbot
Web3

What Is Venice AI? The Privacy-Focused Chatbot

January 13, 2026
Why Bitcoin May Be Underpricing January Rate Cut Odds
Web3

Why Bitcoin May Be Underpricing January Rate Cut Odds

January 13, 2026
YouTuber Cracks Coca-Cola’s 139-Year-Old Secret Formula—Here ‘s the Recipe
Web3

YouTuber Cracks Coca-Cola’s 139-Year-Old Secret Formula—Here ‘s the Recipe

January 12, 2026
Two major crypto events canceled after city hit by 18 violent physical attacks on crypto holders amid market downturn
Web3

Two major crypto events canceled after city hit by 18 violent physical attacks on crypto holders amid market downturn

January 12, 2026
Bitcoin Shrugs Off Powell Probe as DOJ Targets Fed Chair
Web3

Bitcoin Shrugs Off Powell Probe as DOJ Targets Fed Chair

January 12, 2026
Should Politicians Be Able to Use Prediction Markets? House Bill Proposes Ban
Web3

Should Politicians Be Able to Use Prediction Markets? House Bill Proposes Ban

January 9, 2026
Next Post
Trader Says Bitcoin (BTC), Chainlink (LINK) and One Ethereum Rival Setting Up for Rallies

Trader Says Bitcoin (BTC), Chainlink (LINK) and One Ethereum Rival Setting Up for Rallies

Agridex Raises $5 Million to Expand Agricultural Tokenization on Solana

Agridex Raises $5 Million to Expand Agricultural Tokenization on Solana

Ethereum Price Signals Fresh Increase Unless Fails To Surpass $3,080

Ethereum Price Signals Fresh Increase Unless Fails To Surpass $3,080

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Twitter Instagram LinkedIn Telegram RSS
The Crypto HODL

Find the latest Bitcoin, Ethereum, blockchain, crypto, Business, Fintech News, interviews, and price analysis at The Crypto HODL

CATEGORIES

  • Altcoin
  • Analysis
  • Bitcoin
  • Blockchain
  • Crypto Exchanges
  • Crypto Mining
  • Crypto Updates
  • DeFi
  • Ethereum
  • Metaverse
  • NFT
  • Regulations
  • Scam Alert
  • Uncategorized
  • Videos
  • Web3

SITE MAP

  • Disclaimer
  • Privacy Policy
  • DMCA
  • Cookie Privacy Policy
  • Terms and Conditions
  • Contact us

Copyright © 2023 The Crypto HODL.
The Crypto HODL is not responsible for the content of external sites.

No Result
View All Result
  • Home
  • Bitcoin
  • Crypto Updates
    • Altcoin
    • Ethereum
    • Crypto Updates
    • Crypto Mining
    • Crypto Exchanges
  • Blockchain
  • NFT
  • DeFi
  • Web3
  • Metaverse
  • Regulations
  • Scam Alert
  • Analysis
  • Videos
Crypto Marketcap

Copyright © 2023 The Crypto HODL.
The Crypto HODL is not responsible for the content of external sites.

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In