Caver 1.5를 사용해서 solidity 파일을 JAVA로 변환

Caver 1.5를 사용해서 solidity 파일을 JAVA로 변환 하려고 하고있습니다.

1.3 버전에서는 잘되는거 확인했는데

1.5 버전에서는 아래와 같은 에러가 나옵니다.

C:\workspace\caver-java\console\build\scripts>caver-java solidity generate -b Transaction.bin -a Transaction.abi -o . -p com.google

Error: Could not find or load main class com.klaytn.caver.console.Runner

Caused by: java.lang.ClassNotFoundException: com.klaytn.caver.console.Runner

1.5버전은 git 에서 clone해서 gradle로 build했습니다. 혹시 1.5버전 console-shadow 받을수 있을까요?

안녕하세요. 클레이튼 포럼에 질문을 올려주셔서 감사합니다.

  1. caver-java 1.5에서는 core module의 변경사항만 있고 console은 변경사항이 없으므로 caver-java의 1.3버전의 conosle을 사용하셔도 무관합니다. 그리고, 1.5버전에서는 이전 버전에 대한 호환을 보장하기 때문에 1.3버전의 console에서 생성된 contract java code를 사용해도 문제없이 동작합니다.

  2. caver-java 1.5에서는 caver.contract 패키지의 Contract class를 사용하면 abi와 contract binary data를 활용하여 손 쉽게 contract를 배포, 호출 할 수 있습니다. 사용방법은 아래 링크의 caver-java getting started 문서를 통해 확인하 실 수 있습니다.

  3. 만약 1.5버전에서 console 프로그램을 사용하고 싶으시다면,

    • 프로젝트를 빌드 후 “./gradlew shadowDistZip” 을 실행 혹은 gradle task 중 "shadowDistZip"을 실행하여 console/build/distributions/의 경로에 생성된 console-shadow-x.x.x.zip 파일을 활용하시면 됩니다.

해보고 안되시는 부분이나 추가 질문이 있으시면 편하게 질문 부탁드리겠습니다. :slight_smile:

감사합니다.

1 Like

상세한 답변 감사합니다. 도움이 되었습니다 :+1:t2:

1 Like