fabric java sdk:在何处更改链码 前言

fabric java sdk:在何处更改链码 前言,java,hyperledger-fabric,hyperledger,Java,Hyperledger Fabric,Hyperledger,嗨,我是新来的。如果有不清楚的地方,请指出。谢谢大家! 问题: 我刚开始学习。作为一名Java程序员,我选择使用 在我可以运行测试用例之后,我想更改chaincode。我只是在fabricsdkjava/src/test/fixture/sdkinintegration/gocc/sample1/src/github.com/example\u cc/example\u cc.go上找到了。然而,在我更改了链码之后,它就不起作用了。即使我删除了这段代码,测试用例仍然可以运行 所以,我想我找错地方

嗨,我是新来的。如果有不清楚的地方,请指出。谢谢大家!

问题: 我刚开始学习。作为一名Java程序员,我选择使用

在我可以运行测试用例之后,我想更改
chaincode
。我只是在
fabricsdkjava/src/test/fixture/sdkinintegration/gocc/sample1/src/github.com/example\u cc/example\u cc.go上找到了。然而,在我更改了链码之后,它就不起作用了。即使我删除了这段代码,测试用例仍然可以运行

所以,我想我找错地方了。有人能告诉我在哪里更改链码吗?谢谢

附加的
  • 要加载chaincode的代码

    if (isFooChain) {
        // on foo chain install from directory.
    
        ////For GO language and serving just a single user, chaincodeSource is mostly likely the users GOPATH
        installProposalRequest.setChaincodeSourceLocation(new File(TEST_FIXTURES_PATH + "/sdkintegration/gocc/sample1"));
        //[output]: src/test/fixture/sdkintegration/gocc/sample1
        System.out.println(TEST_FIXTURES_PATH + "/sdkintegration/gocc/sample1");
    } else {
        // On bar chain install from an input stream.
    
        installProposalRequest.setChaincodeInputStream(Util.generateTarGzInputStream(
                (Paths.get(TEST_FIXTURES_PATH, "/sdkintegration/gocc/sample1", "src", CHAIN_CODE_PATH).toFile()),
                Paths.get("src", CHAIN_CODE_PATH).toString()));
    
    }
    

  • 当我注意到最后的问题时,我终于解决了这个问题

    • /fabric.sh up
      强制重新创建docker容器
    • /fabric.sh clean
      用于清洁对等设备
    我可以在没有链码的情况下运行invoke请求的原因是我没有清理大量的对等方

    源代码如下:

    #!/usr/bin/env bash
    #
    # Copyright IBM Corp. All Rights Reserved.
    #
    # SPDX-License-Identifier: Apache-2.0
    #
    # simple batch script making it easier to cleanup and start a relatively fresh fabric env.
    
    if [ ! -e "docker-compose.yaml" ];then
      echo "docker-compose.yaml not found."
      exit 8
    fi
    
    ORG_HYPERLEDGER_FABRIC_SDKTEST_VERSION=${ORG_HYPERLEDGER_FABRIC_SDKTEST_VERSION:-}
    
    function clean(){
    
      rm -rf /var/hyperledger/*
    
      if [ -e "/tmp/HFCSampletest.properties" ];then
        rm -f "/tmp/HFCSampletest.properties"
      fi
    
      lines=`docker ps -a | grep 'dev-peer' | wc -l`
    
      if [ "$lines" -gt 0 ]; then
        docker ps -a | grep 'dev-peer' | awk '{print $1}' | xargs docker rm -f
      fi
    
      lines=`docker images | grep 'dev-peer' | grep 'dev-peer' | wc -l`
      if [ "$lines" -gt 0 ]; then
        docker images | grep 'dev-peer' | awk '{print $1}' | xargs docker rmi -f
      fi
    
    }
    
    function up(){
    
      if [ "$ORG_HYPERLEDGER_FABRIC_SDKTEST_VERSION" == "1.0.0" ]; then
        docker-compose up --force-recreate ca0 ca1 peer1.org1.example.com peer1.org2.example.com ccenv
      else
        docker-compose up --force-recreate
    fi
    
    }
    
    function down(){
      docker-compose down;
    }
    
    function stop (){
      docker-compose stop;
    }
    
    function start (){
      docker-compose start;
    }
    
    
    for opt in "$@"
    do
    
        case "$opt" in
            up)
                up
                ;;
            down)
                down
                ;;
            stop)
                stop
                ;;
            start)
                start
                ;;
            clean)
                clean
                ;;
            restart)
                down
                clean
                up
                ;;
    
            *)
                echo $"Usage: $0 {up|down|start|stop|clean|restart}"
                exit 1
    
    esac
    done