Support running ethereumj-studio as executable jar
See updated ethereumj-studio/README.md for details. Note that this commit removes the `build-post-package.xml` ant file (for now) to simplify the Gradle arrangement. This functionality can be re-introduced later and more simply using Gradle's native DSL. In the meantime, both the -core and -studio projects can be run using `gradle run` or run as executable jars by running `gradle shadowJar` followed by the usual `java -jar` execution of the resulting `-all` jar file found in each project's respective `build/libs` directory.
This commit is contained in:
parent
6645493adc
commit
75443aaa13
|
@ -1,5 +1,9 @@
|
||||||
wrapper.gradleVersion = '2.2.1'
|
wrapper.gradleVersion = '2.2.1'
|
||||||
|
|
||||||
|
allprojects {
|
||||||
|
apply plugin: 'eclipse'
|
||||||
|
}
|
||||||
|
|
||||||
subprojects {
|
subprojects {
|
||||||
apply plugin: 'java'
|
apply plugin: 'java'
|
||||||
|
|
||||||
|
|
|
@ -16,15 +16,15 @@ See [ethereumj-studio](../ethereumj-studio).
|
||||||
|
|
||||||
#### Compile, test and package
|
#### Compile, test and package
|
||||||
|
|
||||||
Run `./gradlew build`.
|
Run `../gradlew build`.
|
||||||
|
|
||||||
- find jar artifacts at `build/libs`
|
- find jar artifacts at `build/libs`
|
||||||
- find unit test and code coverage reports at `build/reports`
|
- find unit test and code coverage reports at `build/reports`
|
||||||
|
|
||||||
#### Run an ethereum node
|
#### Run an ethereum node
|
||||||
|
|
||||||
- run `./gradlew run`, or
|
- run `../gradlew run`, or
|
||||||
- build a standalone executable jar with `./gradlew shadow` and execute the `-all` jar in `build/libs` using `java -jar [jarfile]`.
|
- build a standalone executable jar with `../gradlew shadow` and execute the `-all` jar in `build/libs` using `java -jar [jarfile]`.
|
||||||
|
|
||||||
#### Import sources into IntelliJ IDEA
|
#### Import sources into IntelliJ IDEA
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ Note that in order to build the project without errors in IDEA, you will need to
|
||||||
|
|
||||||
#### Install artifacts into your local `~/.m2` repository
|
#### Install artifacts into your local `~/.m2` repository
|
||||||
|
|
||||||
Run `./gradlew install`.
|
Run `../gradlew install`.
|
||||||
|
|
||||||
#### Publish ethereumj-core builds
|
#### Publish ethereumj-core builds
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
plugins {
|
plugins {
|
||||||
id 'application'
|
id 'application'
|
||||||
id 'eclipse'
|
|
||||||
id 'jacoco'
|
id 'jacoco'
|
||||||
id 'maven'
|
id 'maven'
|
||||||
id 'com.github.johnrengelman.shadow' version '1.2.0'
|
id 'com.github.johnrengelman.shadow' version '1.2.0'
|
||||||
|
|
|
@ -1,12 +1,11 @@
|
||||||
|
|
||||||
###### :small_blue_diamond: Build instructions (maven)
|
## ethereum-studio
|
||||||
1. build_1: [a full application package] : ~> ` mvn clean package `
|
|
||||||
|
|
||||||
|
To run the ethereumj-studio GUI:
|
||||||
|
|
||||||
|
- run `../gradlew run`, or
|
||||||
|
- run `../gradlew shadowJar`, followed by `java -jar build/libs/ethereumj-studio-*-all.jar`
|
||||||
|
|
||||||
|
See ethereumj-studio in action here:
|
||||||
|
|
||||||
.
|
|
||||||
.
|
|
||||||
.
|
|
||||||
[![ScreenShot](http://i.imgur.com/FQiBihl.jpg)](https://www.youtube.com/watch?v=D5ok7jh7AOg)
|
[![ScreenShot](http://i.imgur.com/FQiBihl.jpg)](https://www.youtube.com/watch?v=D5ok7jh7AOg)
|
||||||
.
|
|
||||||
.
|
|
||||||
.
|
|
||||||
|
|
|
@ -1,54 +0,0 @@
|
||||||
<project name="ethereumj-postpackage" default="run" basedir=".">
|
|
||||||
|
|
||||||
<description>
|
|
||||||
Build file to package the EthereumJ client and dependencies into a zip-file
|
|
||||||
</description>
|
|
||||||
<!-- set global properties for this build -->
|
|
||||||
<property name="src" location="src"/>
|
|
||||||
<property name="build" location="build"/>
|
|
||||||
<property name="dist" location="dist"/>
|
|
||||||
|
|
||||||
|
|
||||||
<target name="init">
|
|
||||||
<!-- Create the time stamp -->
|
|
||||||
<tstamp/>
|
|
||||||
|
|
||||||
<echo message="Ant is taking control [assembly the package]"></echo>
|
|
||||||
<echo message="${maven.project.artifactId}"></echo>
|
|
||||||
<echo message="${maven.project.version}"></echo>
|
|
||||||
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="make-package">
|
|
||||||
|
|
||||||
<mkdir dir="./target/package"/>
|
|
||||||
<copy todir="./target/package/ethereumj/lib">
|
|
||||||
<fileset dir="./target/dependency"/>
|
|
||||||
</copy>
|
|
||||||
|
|
||||||
<copy file="./target/${maven.project.artifactId}-${maven.project.version}.jar"
|
|
||||||
tofile="./target/package/ethereumj/${maven.project.artifactId}.jar"/>
|
|
||||||
|
|
||||||
<copy todir="./target/package/ethereumj/">
|
|
||||||
<fileset dir="./target/classes/config"/>
|
|
||||||
</copy>
|
|
||||||
|
|
||||||
<copy file="./target/classes/log4j.properties" todir="./target/package/ethereumj/config"/>
|
|
||||||
<copy file="./target/classes/system.properties" todir="./target/package/ethereumj/config"/>
|
|
||||||
<copy file="./target/classes/GeoLiteCity.dat" todir="./target/package/ethereumj/config"/>
|
|
||||||
|
|
||||||
<copy todir="./target/package/ethereumj/samples">
|
|
||||||
<fileset dir="./samples"/>
|
|
||||||
</copy>
|
|
||||||
|
|
||||||
|
|
||||||
<zip destfile="ethereumj-${DSTAMP}-${TSTAMP}.zip" basedir="./target/package">
|
|
||||||
</zip>
|
|
||||||
|
|
||||||
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="run" depends="init, make-package"></target>
|
|
||||||
|
|
||||||
|
|
||||||
</project>
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
plugins {
|
||||||
|
id 'application'
|
||||||
|
id 'com.github.johnrengelman.shadow' version '1.2.0'
|
||||||
|
}
|
||||||
|
|
||||||
|
mainClassName = 'org.ethereum.gui.ToolBar'
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compile project(':ethereumj-core')
|
compile project(':ethereumj-core')
|
||||||
compile "com.maxmind.geoip:geoip-api:1.2.11"
|
compile "com.maxmind.geoip:geoip-api:1.2.11"
|
||||||
|
|
Loading…
Reference in New Issue