Commit Graph

122 Commits

Author SHA1 Message Date
Manfred Karrer
ec2301c6ab Update to lasted TomP2P head 2014-10-24 21:50:51 +02:00
Steve Myers
3d77cc7296 added application plugin and ability to pass gradle run command line args 2014-10-19 18:30:41 -07:00
Manfred Karrer
e42bae9148 Update to latest TomP2P master 2014-10-19 15:17:17 +02:00
Chris Beams
b254ad234a
Upgrade to new TomP2P snapshot 2014-10-14 22:32:10 +02:00
Chris Beams
f135873f58
Enable Gradle Eclipse project metadata generation
This commit applies the 'eclipse' Gradle plugin, such that .classpath,
.project and .settings files can be generated using:

    ./gradlew eclipse

Once the above is complete, import the project into Eclipse with the
following command:

    File->Import->Existing projects into workspace

The .gitignore file has been updated accordingly.

Resolves #222
2014-10-13 12:02:43 +02:00
Chris Beams
5f53fea190
Remove use of Gradle JavaFX plugin
As documented at [1], version 8.1.1 of the Gradle JavaFX plugin has
disappeared from bintray. This causes Travis CI build failures. Version
8.1.0 is still in place [2], but downgrading to it causes further build
errors.

This commit removes use of the plugin entirely in order to fix the CI
problem immediately. In the meantime, the Bitsquare UI must be launched
directly from within IDEA.

Resolves #221
See #66

[1]: https://bitbucket.org/shemnon/javafx-gradle/issue/46/received-status-code-401-from-server
[2]: http://dl.bintray.com/content/shemnon/javafx-gradle/org/bitbucket/shemnon/javafxplugin/gradle-javafx-plugin/
2014-10-13 11:13:43 +02:00
Steve Myers
f8b9408514 Merged seedpeer branch with master branch
Conflicts:
	src/main/java/io/bitsquare/BitSquare.java
	src/main/java/io/bitsquare/gui/main/MainModel.java
2014-10-12 13:07:28 -07:00
Chris Beams
db663db007
Remove obsolete 'apply plugin' Gradle directives
- The 'java' plugin is added implicitly by the gradle/javafx.gradle
   script, so there is no longer a need to explicitly apply it.

 - The 'application' plugin is no longer necessary now that we are
   building native installers with the javafx plugin.
2014-10-09 07:35:38 +02:00
Steve Myers
b4cd7467b2 moved UI Application to BitSquareUI class so BitSquare class can startup as seed peer on headless server. 2014-10-07 09:24:44 -07:00
Steve Myers
47232eebc2 Added command line arguments parser and flag to start app in seed mode. Also added default properties loader, but not using it yet. 2014-10-05 23:53:49 -07:00
Steve Myers
5e9f97953f Added built in dht seed node 2014-10-04 19:19:18 -07:00
Chris Beams
d16c2740b6
Generate native installers with Gradle JavaFX plugin
The plugin's jfx* tasks tie into the normal Gradle build lifecycle, such
that `gradle build` will now generate executables and installers
according to the OS on which the build is being run. These files are
output to the `build/distributions` directory.

Installers work as expected OS X and Linux at this point.

Windows installers do build, but a very particular configuration is
necessary on the Windows machine doing the building (this configuration
is to be documented in #109). However, even when the configuration is in
place and the MSI installer is successfully built, there is still a
fatal error at installer execution time relating to a missing
msvp100.dll file. See details at
https://bitbucket.org/shemnon/javafx-gradle/issue/43. An issue has been
created to track this from the Bitsquare side as well--see #108.

The changes made in this commit are based on on the samples at
http://bitbucket.org/shemnon/javafx-gradle and the article at
http://jaxenter.com/tutorial-a-guide-to-the-gradle-javafx-plugin-46270.html

The gradle/javafx.gradle file is copied directly from the sources in the
bitbucket repository above, as is apparently the convention (not sure
why this isn't part of the plugin itself, but that's a question to be
addressed later).

Resolves #66, #100
See #108, #109
2014-10-03 18:32:03 +02:00
Chris Beams
1031a72e52
Upgrade to BitcoinJ 0.12 GA
Resolves #98
2014-10-03 18:13:14 +02:00
Chris Beams
9727ea21a8
Upgrade to BitcoinJ 0.12-SNAPSHOT
- Update imports to reflect BitcoinJ's repackaging, including:

   git grep -l 'import com.google.bitcoin' | \
   xargs perl -p -i -e 's/import com.google.bitcoin/import org.bitcoinj/'

   git grep -l 'com.google.bitcoin' | \
   xargs perl -p -i -e 's/com.google.bitcoin/org.bitcoinj/'

 - Replace use of BitcoinJ's CoinFormat, which has now been renamed to
   MonetaryFormat, using:

   git grep -l 'CoinFormat' | \
   xargs perl -p -i -e 's/CoinFormat/MonetaryFormat/g'

 - Fix calls to BitcoinJ's Script#correctlySpends, whose signature has
   changed from 0.11 => 0.12.

See #98
2014-10-03 18:13:14 +02:00
Manfred Karrer
a334beb1a7 Update controlsfx to be compatible with latest jdk 2014-09-30 23:36:00 +02:00
Chris Beams
4d4787d84a
Upgrade Gradle wrapper version from 2.0 => 2.1 2014-09-29 09:56:30 +02:00
Chris Beams
d536258871
Use published snapshots for BitcoinJ and TomP2P
Bitsquare depends on specific versions of BitcoinJ and TomP2P that have
not previously been published to any maven repository--until now. Based
on the 'published' branch of the bitcoinj [1] and tomp2p [2] forks under
the bitsquare organization, snapshots have been published to a temporary
repository [3] that has been made available to us by JFrog.

To be as explicit as possible, these custom-published snapshots have
had their version numbers qualified with the short hash of the commit
they were built from. So for bitcoinj, the dependency is no longer
0.12-SNAPSHOT, but 0.12.308de4e-SNAPSHOT. For TomP2P, the version has
gone from 5.0-Alpha24-SNAPSHOT to 5.0-Alpha24.805623c-SNAPSHOT.
Accordingly, these qualified versions are now reflected in the
dependency declarations in build.gradle.

This means that it is no longer necessary to build bitcoinj and tomp2p
locally in order to get up and running with Bitsquare development, and
the README has been updated accordingly. And it also means we can now
set up a Travis CI build with ease (which shall be done with #86).

Resolves #97

[1]: https://github.com/bitsquare/bitcoinj/tree/published
[2]: https://github.com/bitsquare/tomp2p/tree/published
[3]: http://partnerdemo.artifactoryonline.com/partnerdemo/libs-snapshots-local/
2014-09-29 08:49:23 +02:00
Manfred Karrer
1efc1da6a6 Update to controlsFX 8.0.6 2014-09-03 23:33:00 +02:00
Chris Beams
bf7e46d1d5
Add Gradle OneJar plugin
For creation of a self-contained executable jar.

Run:
 - `./gradle executableJar`
 - `java -jar ./build/libs/bitsquare.jar

Note that actually executing the jar fails with an exception from
io.bitsquare.util.AppDirectoryUtil.createDirIfNotExists. This will be
fixed later. The purpose of this commit is only to establish the
executable jar infrastructure.
2014-08-28 13:56:06 +02:00
Chris Beams
0501965b99
Configure Gradle application plugin
- `./gradlew run` to launch Bitsquare
 - `./gradlew installApp` to create scripts in build/install/bitsquare

See http://www.gradle.org/docs/current/userguide/userguide_single.html#application_plugin
2014-08-28 13:56:05 +02:00
Chris Beams
62cb43dce5
Configure Gradle build
- Set version at 0.1.0-SNAPSHOT, per http://semver.org practices
 - Configure dependencies per existing Maven pom
 - Resolve dependencies from jcenter by default, mavenLocal for custom
   BitcoinJ and TomP2P binaries (which still must be built separately)
 - Copy non-java files (fxml, etc) from src/main/java when processing
   resources

`./gradle build` is now completes successfully.
2014-08-28 13:56:05 +02:00
Chris Beams
49adf9cc97
Add Gradle build file with wrapper configuration 2014-08-28 13:56:04 +02:00