1.下载源码
https://github.com/hyperledger/fabric-sdk-java
如果是直接下载zip包的话,打包的时候会报错,因为pom中有个git插件需要读取git信息,注释掉即可。
<!--<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>2.2.2</version>
<executions>
<execution>
<id>get-the-git-infos</id>
<goals>
<goal>revision</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
<configuration>
<dotGitDirectory>${project.basedir}/.git</dotGitDirectory>
</configuration>
</plugin>-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifestEntries>
<!--<git-commit-id>${git.commit.id}</git-commit-id>
<git-branch>${git.branch}</git-branch>
<git-commit-time>${git.commit.time}</git-commit-time>-->
<fabric-sdk-java-version>${project.version}</fabric-sdk-java-version>
</manifestEntries>
</archive>
</configuration>
</plugin>
2.添加os.detected.classifier变量
在pom的properties中增加<os.detected.classifier>windows-x86_64</os.detected.classifier>
随便在一个java项目中写个main方法,输入如下代码
System.out.println(System.getProperty("os.name"));
System.out.println(System.getProperty("os.arch"));
返回值在https://github.com/trustin/os-maven-plugin这个链接中找对应的值做转换后写在<os.detected.classifier>的对应参数中。
3.项目的类中部分Grpc后缀的类找不到
解决办法:在POM.XML文件中引入,本身项目的jar包依赖即可
<dependency>
<groupId>org.hyperledger.fabric-sdk-java</groupId>
<artifactId>fabric-sdk-java</artifactId>
<version>1.0.1</version>
</dependency>
导入这个有可能在项目的maven dependencies中加载不进来fabric-sdk-java的jar包,从而导致项目中的类import不了jar包中的类,这是因为项目的POM文件的groupId与你引入的依赖的groupId一致了,此时把项目的groupId改个其它名字即可。
以上内容参考了 https://blog.youkuaiyun.com/h363659487/article/details/77526885