3
0
mirror of https://github.com/Qortal/altcoinj.git synced 2025-01-30 23:02:15 +00:00
Java library for adding altcoin support to bitcoinj
Go to file
2014-11-24 13:33:21 +01:00
core Slightly different attempt to fix thread safety issue in PeerGroup to in #278 - make connectTo always locked. It used to be that we couldn't do this but there are no comments reminding me why not, and unit tests + wallettemplate seem happy with it being locked, so I think changes in the network code since then have probably removed this issue. 2014-11-24 13:33:21 +01:00
designdocs HD Wallets: implement auto upgrade behaviour and refresh the design doc. 2014-06-13 14:11:51 +02:00
examples Replace peerGroup.startAsync/awaitRunning with start() and awaitTerminated with stop(). 2014-11-24 13:04:58 +01:00
misc Add a logo. 2013-03-01 13:59:48 +01:00
orchid Update Orchid version and POM to reflect the dirauth change. 2014-11-17 14:05:20 +01:00
tools Replace peerGroup.startAsync/awaitRunning with start() and awaitTerminated with stop(). 2014-11-24 13:04:58 +01:00
wallettemplate WalletTemplate: allow sending of arbitrary amounts. 2014-11-14 15:40:08 +01:00
.gitattributes Add a logo. 2013-03-01 13:59:48 +01:00
.gitignore HD wallets alpha preview 2014-05-29 20:11:13 +02:00
.travis.yml Adds coveralls.io support via maven plugin. 2014-11-03 14:19:52 +01:00
AUTHORS AUTHORS: Fix Martin's name. 2014-10-05 20:38:31 +02:00
COPYING Initial checkin of BitCoinJ 2011-03-07 10:17:10 +00:00
pom.xml Maven: auto release after close 2014-11-04 21:24:30 +01:00
README.md Adds coveralls.io support via maven plugin. 2014-11-03 14:19:52 +01:00

Build status: Build Status
Coverage status: Coverage Status

Welcome to bitcoinj

The bitcoinj library is a Java implementation of the Bitcoin protocol, which allows it to maintain a wallet and send/receive transactions without needing a local copy of Bitcoin Core. It comes with full documentation and some example apps showing how to use it.

Technologies

Getting started

To get started, it is best to have the latest JDK and Maven installed. The HEAD of the master branch contains the latest development code and various production releases are provided on feature branches.

Building from the command line

To perform a full build use

mvn clean package

You can also run

mvn site:site

to generate a website with useful information like JavaDocs.

The outputs are under the target directory.

Building from an IDE

Alternatively, just import the project using your IDE. IntelliJ has Maven integration built-in and has a free Community Edition. Simply use File | Import Project and locate the pom.xml in the root of the cloned project source tree.

Example applications

These are found in the examples module.

Forwarding service

This will download the block chain and eventually print a Bitcoin address that it has generated.

If you send coins to that address, it will forward them on to the address you specified.

  cd examples
  mvn exec:java -Dexec.mainClass=org.bitcoinj.examples.ForwardingService -Dexec.args="<insert a bitcoin address here>"

Note that this example app does not use checkpointing, so the initial chain sync will be pretty slow. You can make an app that starts up and does the initial sync much faster by including a checkpoints file; see the documentation for more info on this technique.

Where next?

Now you are ready to follow the tutorial.