2017-09-21 1 views
0

Comme décrit à la page https://github.com/hyperledger/fabric-sdk-java Dans un terminal Cygwin j'ai construit l'image virtuelle Ubuntu à partir Hyperledger tissu 1.0.2 sources, a construit le tissu des images Docker et tissu lancé dans un terminal avec les éléments suivants:Comment lancez-vous le test bout-à-bout fabric-java-sdk 1.0.1?

cd /cygdrive/c/gocode 
mkdir fabric_1.0.2 
cd fabric_1.0.2 

# get the sources to build VM in which we will build the Docker images 
git clone https://github.com/hyperledger/fabric.git 
git clone https://github.com/hyperledger/fabric-ca.git 

# update the sources to latest version 1.0.2 tag 
cd fabric-ca 
git reset --hard cb117d85980799d24d6df2d3533f5598a552b259 
cd ../fabric 
git reset --hard 5fb31ddd24d6441b0d499b9bb211632800044512 

# change to sub-folder where Vagrantfile is 
cd devenv 

# launch VM, it will update itself and install dependencies as per 
# setup.sh referred to in Vagrantfile 
vagrant up 

# in case something kernel-related was updated: 
vagrant reload 

# log in to image: 
vagrant ssh 

# build fabric docker images 
make docker 

# build fabric-ca docker images 
cd ../fabric-ca 
make docker 

exit 
vagrant halt 

# For fabric-java-sdk testing, add in Vagrantfile: 
config.vm.network :forwarded_port, guest: 7056, host: 7056 
config.vm.network :forwarded_port, guest: 7058, host: 7058 
config.vm.network :forwarded_port, guest: 8051, host: 8051 
config.vm.network :forwarded_port, guest: 8053, host: 8053 
config.vm.network :forwarded_port, guest: 8054, host: 8054 
config.vm.network :forwarded_port, guest: 8056, host: 8056 
config.vm.network :forwarded_port, guest: 8058, host: 8058 
config.vm.network :forwarded_port, guest: 7059, host: 7059 

# Add in Vagrantfile between the two lines: 
#####config.vm.synced_folder "..", "/opt/gopath/src/github.com/hyperledger/fabric" 
config.vm.synced_folder "fabric-sdk-java/src/test/fixture/sdkintegration", "/opt/gopath/src/github.com/hyperledger/fabric/sdkintegration" 
#####config.vm.synced_folder ENV.fetch('LOCALDEVDIR', ".."), "#{LOCALDEV}" 

# under /cygdrive/c/gocode/fabric_1.0.2/fabric/devenv  
git clone https://github.com/hyperledger/fabric-sdk-java.git 
cd fabric-sdk-java 
# reset to latest version 1.0.1 
git reset --hard 11bd160a95fa8529d93582ec68556bb1c4652c21 

vagrant up 
vagrant box update 
vagrant reload 
vagrant ssh 

# add JAVA_HOME environment variable 
sudo vi /etc/profile 
# add two lines: 
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 
export PATH=$JAVA_HOME/bin:$PATH 

exit 
vagrant ssh 

# test we have our variable, Java and Maven: 
echo $JAVA_HOME 
java -version 
mvn -version 

cd sdkintegration 
# launches fabric: 
docker-compose down; rm -rf /var/hyperledger/*; docker-compose up --force-recreate 

Next I construit quelques-uns des objets en tissu-java-sdk les étapes suivantes, tous les succès:

# open a new Cygwin terminal: 
cd /cygdrive/c/gocode/fabric_1.0.2/fabric/devenv 
vagrant ssh 

# build the jar /vagrant/fabric-sdk-java/target/fabric-sdk-java-1.0.1.jar 
cd /vagrant/fabric-sdk-java 
mvn install 

#### at this point in the other terminal with fabric running, 
#### the following lines appear: 
## peer0.org1.example.com | 2017-09-21 13:56:57.747 UTC [endorser] ProcessProposal -> DEBU 1a6 Entry 
## peer0.org1.example.com | 2017-09-21 13:56:57.747 UTC [protoutils] ValidateProposalMessage -> DEBU 1a7 ValidateProposalMessage starts for signed proposal 0xc4202bb680 
## peer0.org1.example.com | 2017-09-21 13:56:57.747 UTC [endorser] ProcessProposal -> DEBU 1a8 Exit 

# build /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java/build/libs/shim-client-1.0.jar 
cd /opt/gopath/src/github.com/hyperledger/fabric/core/chaincode/shim/java 
gradle build 

cd /opt/gopath/src/github.com/hyperledger/fabric/sdkintegration/javacc/example_cc 
# ref https://stackoverflow.com/questions/39519586/shim-client-1-0-jar-missing-when-compiling-the-java-chain-code 
gradle -b build.gradle build 

# add missing dependency in pom.xml: 
<dependency> 
    <groupId>javax.json</groupId> 
    <artifactId>javax.json-api</artifactId> 
    <version>1.1.0-M1</version> 
</dependency> 

mvn dependency:resolve 
mvn install 

à ce stade, je suis à la fois coincé et confus par la documentation. Que dois-je faire ensuite pour exécuter le test d'intégration Java de bout en bout, s'il vous plaît?

Répondre

0

Avec une prime sur elle pour une journée complète, je suis étonné que personne ne s'enfuit avec elle.

La réponse était sur mon ancien blog à https://bertrandszoghy.wordpress.com/2017/05/12/fabric-sdk-java/

Tout ce qui manquait dans la seconde fenêtre de terminal a été:

cd /vagrant/fabric-sdk-java 
mvn failsafe:integration-test -DskipITs=false 

Résultats: Exécuter les tests: 18, échecs: 0 Erreurs: 0, sauté: 2