bitcoin-s/website/versioned_docs/version-0.2.0/getting-started.md

2.3 KiB

id title original_id
version-0.2.0-getting-started Add Bitcoin-S to your project getting-started

REPL

You can try out Bitcoin-S in a REPL in a matter of seconds. Run the provided "try bitcoin-s" script, which has no dependencies other than an installed JDK. The script downloads and installs Coursier and uses it to fetch the Ammonite REPL and the latest version of Bitcoin-S. It then drops you into immediately into a REPL session.

$ curl -s https://raw.githubusercontent.com/bitcoin-s/bitcoin-s/master/try-bitcoin-s.sh | bash
Loading...
Welcome the Bitcoin-S REPL, powered by Ammonite
Check out our documentation and examples at
https://bitcoin-s.org/docs/getting-started
@ val priv = ECPrivateKey()
@ val pub = priv.publicKey
@ val spk = P2WPKHWitnessSPKV0(pub)
@ val address = Bech32Address(spk, MainNet)
@ address.value # Tada! You've just made a Bech32 address
res4: String = "bc1q7ynsz7tamtnvlmts4snrl7e98jc9d8gqwsjsr5"

Getting prebuilt JARs

If you want to add Bitcoin-S to your project, follow the instructions for your build tool

sbt

Add this to your build.sbt:

libraryDependencies +="org.bitcoin-s" % "bitcoin-s-secp256k1jni" % "0.2.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-core" % "0.2.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-bitcoind-rpc" % "0.2.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-eclair-rpc" % "0.2.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-testkit" % "0.2.0"

libraryDependencies += "org.bitcoin-s" %% "bitcoin-s-zmq" % "0.2.0"

Nightly builds

You can also run on the bleeding edge of Bitcoin-S, by adding a snapshot build to your build.sbt. The most recent snapshot published is 0.2.0+129-56f20393+20191222-0903-SNAPSHOT.

To fetch snapshots, you will need to add the correct resolver in your build.sbt:

resolvers += Resolver.sonatypeRepo("snapshots")

Mill

TODO

Building JARs yourself

If you want to build Bitcoin-S JARs yourself, you need to use the sbt build tool. Once you have sbt installed, run sbt publishLocal. This places the required JAR files in your .ivy2/local folder. On Linux, this is located at $HOME/.ivy2/local/ by default.