Skip to content

ether-camp/solcJ

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solcJ

Solidity compiler binaries, packed into jar for use in Java based projects.

⛔ Deprecated ⛔

This project is not supported anymore. If you have any question or would like to contribute find us on Gitter.


Jars are available at: https://bintray.com/ethereum/maven/org.ethereum.solcJ-all/

Can be included in gradle via:

compile 'org.ethereum:solcJ-all:0.5.7'

We use jar in EthereumJ project, where we add addition layer of classes to interact with solc:

https://github.com/ethereum/ethereumj/tree/develop/ethereumj-core/src/main/java/org/ethereum/solidity/compiler

And then we use code snippet for compilation:

String contractSrc =
    "pragma solidity ^0.5.7;\n" +
            "contract a {" +
            "        function() {throw;}" +
            "}";

SolidityCompiler.Result res = SolidityCompiler.compile(
        contractSrc.getBytes(), true, ABI, BIN, INTERFACE, METADATA);
System.out.println("Out: '" + res.output + "'");
System.out.println("Err: '" + res.errors + "'");
CompilationResult result = CompilationResult.parse(res.output);

CompilationResult.ContractMetadata a = result.contracts.get("a");
CallTransaction.Contract contract = new CallTransaction.Contract(a.abi);
System.out.printf(contract.functions[0].toString());

About

DEPRECATED! Solidity compiler binaries, packed into jar for use in ethereumJ

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors