diff --git a/core b/core
index 8edea0b2..792b9f13 160000
--- a/core
+++ b/core
@@ -1 +1 @@
-Subproject commit 8edea0b21b4ae263504afc32bf6332256e2906f1
+Subproject commit 792b9f13d058760a1a51ac49d3477f061b80e478
diff --git a/deploy/docker/docker-sdk/pom.xml b/deploy/docker/docker-sdk/pom.xml
index 276d48c4..f4df9d97 100644
--- a/deploy/docker/docker-sdk/pom.xml
+++ b/deploy/docker/docker-sdk/pom.xml
@@ -3,8 +3,8 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- docker
com.jd.blockchain
+ docker
1.4.0.RELEASE
4.0.0
@@ -15,22 +15,22 @@
com.jd.blockchain
crypto-classic
- ${project.version}
+ ${framework.version}
com.jd.blockchain
crypto-sm
- ${project.version}
+ ${framework.version}
com.jd.blockchain
ledger-model
- ${project.version}
+ ${framework.version}
com.jd.blockchain
sdk-client
- ${project.version}
+ ${framework.version}
diff --git a/deploy/docker/docker-sdk/src/main/java/com/jd/blockchain/SDK_Base_Demo.java b/deploy/docker/docker-sdk/src/main/java/com/jd/blockchain/SDK_Base_Demo.java
index 9f2e4754..4f321b13 100644
--- a/deploy/docker/docker-sdk/src/main/java/com/jd/blockchain/SDK_Base_Demo.java
+++ b/deploy/docker/docker-sdk/src/main/java/com/jd/blockchain/SDK_Base_Demo.java
@@ -1,15 +1,21 @@
package com.jd.blockchain;
+import static com.jd.blockchain.SDKDemo_Constant.readChainCodes;
+import static com.jd.blockchain.transaction.ContractReturnValue.decode;
+
import com.jd.blockchain.crypto.HashDigest;
-import com.jd.blockchain.ledger.*;
+import com.jd.blockchain.ledger.BlockchainIdentity;
+import com.jd.blockchain.ledger.BlockchainKeyGenerator;
+import com.jd.blockchain.ledger.BlockchainKeypair;
+import com.jd.blockchain.ledger.PreparedTransaction;
+import com.jd.blockchain.ledger.TransactionResponse;
+import com.jd.blockchain.ledger.TransactionTemplate;
import com.jd.blockchain.sdk.BlockchainService;
import com.jd.blockchain.sdk.client.GatewayServiceFactory;
import com.jd.blockchain.transaction.GenericValueHolder;
-import com.jd.blockchain.utils.Bytes;
import com.jd.chain.contract.TransferContract;
-import static com.jd.blockchain.SDKDemo_Constant.readChainCodes;
-import static com.jd.blockchain.transaction.ContractReturnValue.decode;
+import utils.Bytes;
public abstract class SDK_Base_Demo {
protected BlockchainKeypair adminKey;
diff --git a/deploy/docker/pom.xml b/deploy/docker/pom.xml
index 6c6e1dab..03099d23 100644
--- a/deploy/docker/pom.xml
+++ b/deploy/docker/pom.xml
@@ -3,15 +3,18 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- deploy-root
com.jd.blockchain
+ deploy-root
1.4.0.RELEASE
4.0.0
pom
docker
-
+
+
+ 1.4.1.RELEASE
+
docker-sdk
diff --git a/deploy/pom.xml b/deploy/pom.xml
index b59b12a0..81aa4744 100644
--- a/deploy/pom.xml
+++ b/deploy/pom.xml
@@ -13,7 +13,7 @@
pom
- 1.4.0.RELEASE
+ 1.4.1.RELEASE
diff --git a/framework b/framework
index 778d95f4..8b2fb535 160000
--- a/framework
+++ b/framework
@@ -1 +1 @@
-Subproject commit 778d95f4a7f17fc51e2b5be2f40e804d28dc0dc5
+Subproject commit 8b2fb535e2a44468069bfa3e9ff2612e4cc448eb
diff --git a/libs/binary-proto b/libs/binary-proto
index ea87cb42..6903a439 160000
--- a/libs/binary-proto
+++ b/libs/binary-proto
@@ -1 +1 @@
-Subproject commit ea87cb42c8d8421031e5373dbc6abd0502a2ac5f
+Subproject commit 6903a439753daa5bde60e622b4fe56708ebf89e1
diff --git a/libs/httpservice b/libs/httpservice
index 4e0e5581..c5d1f821 160000
--- a/libs/httpservice
+++ b/libs/httpservice
@@ -1 +1 @@
-Subproject commit 4e0e558139ca33ca217ae7012ca5e989230d53c3
+Subproject commit c5d1f821a665ba5e9a43b21643b2ca0a25ed0d9f
diff --git a/libs/kvdb b/libs/kvdb
index 8550d31b..fad87245 160000
--- a/libs/kvdb
+++ b/libs/kvdb
@@ -1 +1 @@
-Subproject commit 8550d31b1393c8da64e87223aac2d3ae5dfc06ab
+Subproject commit fad87245a4a33a9781d8aba1c0aada8c17d264f9
diff --git a/libs/utils b/libs/utils
index c0ffc460..b2f1c9a2 160000
--- a/libs/utils
+++ b/libs/utils
@@ -1 +1 @@
-Subproject commit c0ffc460cc6869b646d3f299a0f60819e872eda2
+Subproject commit b2f1c9a2f4e28ee2cee2321ad3333ea127fd0604
diff --git a/samples/contract-samples/src/main/java/com/jdchain/samples/contract/SampleContractImpl.java b/samples/contract-samples/src/main/java/com/jdchain/samples/contract/SampleContractImpl.java
index b4492707..5777640c 100644
--- a/samples/contract-samples/src/main/java/com/jdchain/samples/contract/SampleContractImpl.java
+++ b/samples/contract-samples/src/main/java/com/jdchain/samples/contract/SampleContractImpl.java
@@ -9,7 +9,8 @@ import com.jd.blockchain.crypto.SignatureFunction;
import com.jd.blockchain.ledger.BlockchainKeypair;
import com.jd.blockchain.ledger.Event;
import com.jd.blockchain.ledger.TypedKVEntry;
-import com.jd.blockchain.utils.Bytes;
+
+import utils.Bytes;
/**
* 合约样例实现
diff --git a/samples/pom.xml b/samples/pom.xml
index 6f761cd8..471df7b6 100644
--- a/samples/pom.xml
+++ b/samples/pom.xml
@@ -8,7 +8,7 @@
pom
- 1.4.0.RELEASE
+ 1.4.1.RELEASE
diff --git a/samples/sdk-samples/pom.xml b/samples/sdk-samples/pom.xml
index aae79347..313e1c14 100644
--- a/samples/sdk-samples/pom.xml
+++ b/samples/sdk-samples/pom.xml
@@ -39,7 +39,7 @@
com.jd.blockchain
contract-samples
- ${framework.version}
+ ${project.version}
diff --git a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/TestNet.java b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/TestNet.java
index 4f70cbe9..a431b209 100644
--- a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/TestNet.java
+++ b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/TestNet.java
@@ -19,13 +19,15 @@ import com.jd.blockchain.tools.initializer.DBConnectionConfig;
import com.jd.blockchain.tools.initializer.LedgerBindingConfig;
import com.jd.blockchain.tools.initializer.PresetAnswerPrompter;
import com.jd.blockchain.tools.initializer.Prompter;
-import com.jd.blockchain.utils.concurrent.ThreadInvoker;
-import com.jd.blockchain.utils.io.FileUtils;
-import com.jd.blockchain.utils.net.NetworkAddress;
import com.jdchain.samples.sdk.testnet.GatewayRunner;
import com.jdchain.samples.sdk.testnet.NodeWebContext;
import com.jdchain.samples.sdk.testnet.PartNode;
import com.jdchain.samples.sdk.testnet.PeerServer;
+
+import utils.concurrent.ThreadInvoker;
+import utils.io.FileUtils;
+import utils.net.NetworkAddress;
+
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.config.Configurator;
import org.junit.Assert;
diff --git a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/GatewayRunner.java b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/GatewayRunner.java
index 0d7ab864..4d85c576 100644
--- a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/GatewayRunner.java
+++ b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/GatewayRunner.java
@@ -2,10 +2,13 @@ package com.jdchain.samples.sdk.testnet;
import com.jd.blockchain.gateway.GatewayConfigProperties;
import com.jd.blockchain.gateway.GatewayConfigProperties.KeyPairConfig;
+
+import utils.concurrent.ThreadInvoker;
+import utils.concurrent.ThreadInvoker.AsyncCallback;
+import utils.net.NetworkAddress;
+
import com.jd.blockchain.gateway.GatewayServerBooter;
-import com.jd.blockchain.utils.concurrent.ThreadInvoker;
-import com.jd.blockchain.utils.concurrent.ThreadInvoker.AsyncCallback;
-import com.jd.blockchain.utils.net.NetworkAddress;
+
import org.springframework.core.io.ClassPathResource;
import org.springframework.util.CollectionUtils;
diff --git a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/NodeWebContext.java b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/NodeWebContext.java
index 1bca1ebd..eaba367b 100644
--- a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/NodeWebContext.java
+++ b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/NodeWebContext.java
@@ -14,8 +14,10 @@ import com.jd.blockchain.tools.initializer.DBConnectionConfig;
import com.jd.blockchain.tools.initializer.LedgerInitProcess;
import com.jd.blockchain.tools.initializer.Prompter;
import com.jd.blockchain.tools.initializer.web.LedgerInitializeWebController;
-import com.jd.blockchain.utils.concurrent.ThreadInvoker;
-import com.jd.blockchain.utils.net.NetworkAddress;
+
+import utils.concurrent.ThreadInvoker;
+import utils.net.NetworkAddress;
+
import org.springframework.boot.SpringApplication;
import org.springframework.context.ConfigurableApplicationContext;
diff --git a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PartNode.java b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PartNode.java
index 92ed6622..a0525b77 100644
--- a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PartNode.java
+++ b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PartNode.java
@@ -4,7 +4,8 @@ import com.jd.blockchain.crypto.AddressEncoding;
import com.jd.blockchain.crypto.PubKey;
import com.jd.blockchain.ledger.ParticipantNode;
import com.jd.blockchain.ledger.ParticipantNodeState;
-import com.jd.blockchain.utils.Bytes;
+
+import utils.Bytes;
public class PartNode implements ParticipantNode {
diff --git a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PeerServer.java b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PeerServer.java
index e7228ac4..03ce6cbd 100644
--- a/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PeerServer.java
+++ b/samples/sdk-samples/src/main/java/com/jdchain/samples/sdk/testnet/PeerServer.java
@@ -4,8 +4,9 @@ import com.jd.blockchain.ledger.core.LedgerManager;
import com.jd.blockchain.peer.PeerServerBooter;
import com.jd.blockchain.storage.service.DbConnectionFactory;
import com.jd.blockchain.tools.initializer.LedgerBindingConfig;
-import com.jd.blockchain.utils.concurrent.ThreadInvoker;
-import com.jd.blockchain.utils.net.NetworkAddress;
+
+import utils.concurrent.ThreadInvoker;
+import utils.net.NetworkAddress;
public class PeerServer {
private NetworkAddress serviceAddress;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ContractSample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ContractSample.java
index 70d139e4..30146310 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ContractSample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ContractSample.java
@@ -11,9 +11,11 @@ import com.jd.blockchain.ledger.TypedValue;
import com.jd.blockchain.transaction.ContractEventSendOperationBuilder;
import com.jd.blockchain.transaction.ContractReturnValue;
import com.jd.blockchain.transaction.GenericValueHolder;
-import com.jd.blockchain.utils.io.BytesUtils;
-import com.jd.blockchain.utils.io.FileUtils;
import com.jdchain.samples.contract.SampleContract;
+
+import utils.io.BytesUtils;
+import utils.io.FileUtils;
+
import org.junit.Assert;
import org.junit.Test;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/DataAccountSample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/DataAccountSample.java
index ddece471..d5206147 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/DataAccountSample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/DataAccountSample.java
@@ -5,7 +5,9 @@ import com.jd.blockchain.ledger.BlockchainKeypair;
import com.jd.blockchain.ledger.PreparedTransaction;
import com.jd.blockchain.ledger.TransactionResponse;
import com.jd.blockchain.ledger.TransactionTemplate;
-import com.jd.blockchain.utils.Bytes;
+
+import utils.Bytes;
+
import org.junit.Assert;
import org.junit.Test;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/EventSample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/EventSample.java
index aedf7360..f5c114cf 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/EventSample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/EventSample.java
@@ -8,8 +8,10 @@ import com.jd.blockchain.ledger.PreparedTransaction;
import com.jd.blockchain.ledger.SystemEvent;
import com.jd.blockchain.ledger.TransactionResponse;
import com.jd.blockchain.ledger.TransactionTemplate;
-import com.jd.blockchain.utils.Bytes;
-import com.jd.blockchain.utils.io.BytesUtils;
+
+import utils.Bytes;
+import utils.io.BytesUtils;
+
import org.junit.Assert;
import org.junit.Test;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ParticipantSample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ParticipantSample.java
index 21e7e9f6..be934d65 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ParticipantSample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/ParticipantSample.java
@@ -18,11 +18,12 @@ import com.jd.blockchain.ledger.BlockchainKeypair;
import com.jd.blockchain.ledger.PreparedTransaction;
import com.jd.blockchain.ledger.TransactionResponse;
import com.jd.blockchain.ledger.TransactionTemplate;
-import com.jd.blockchain.utils.codec.Base58Utils;
-import com.jd.blockchain.utils.security.ShaUtils;
import com.jd.httpservice.converters.JsonResponseConverter;
import com.jd.httpservice.utils.web.WebResponse;
+import utils.codec.Base58Utils;
+import utils.security.ShaUtils;
+
/**
* 参与方节点相关操作示例:
* 注册/激活/移除参与方操作
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/QuerySample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/QuerySample.java
index cc418c0e..f81142ba 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/QuerySample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/QuerySample.java
@@ -22,8 +22,10 @@ import com.jd.blockchain.ledger.TransactionState;
import com.jd.blockchain.ledger.TypedKVEntry;
import com.jd.blockchain.ledger.UserInfo;
import com.jd.blockchain.ledger.UserPrivilegeSet;
-import com.jd.blockchain.utils.codec.Base58Utils;
-import com.jd.blockchain.utils.io.BytesUtils;
+
+import utils.codec.Base58Utils;
+import utils.io.BytesUtils;
+
import org.junit.Assert;
import org.junit.Test;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/SampleBase.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/SampleBase.java
index f4e417fa..e1206a69 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/SampleBase.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/SampleBase.java
@@ -8,7 +8,8 @@ import com.jd.blockchain.crypto.PubKey;
import com.jd.blockchain.ledger.BlockchainKeypair;
import com.jd.blockchain.sdk.BlockchainService;
import com.jd.blockchain.sdk.client.GatewayServiceFactory;
-import com.jd.blockchain.utils.codec.Base58Utils;
+
+import utils.codec.Base58Utils;
import java.util.Properties;
diff --git a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/UserSample.java b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/UserSample.java
index 502913a8..3c4c655f 100644
--- a/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/UserSample.java
+++ b/samples/sdk-samples/src/test/java/com/jdchain/samples/sdk/UserSample.java
@@ -7,7 +7,9 @@ import com.jd.blockchain.ledger.PreparedTransaction;
import com.jd.blockchain.ledger.TransactionPermission;
import com.jd.blockchain.ledger.TransactionResponse;
import com.jd.blockchain.ledger.TransactionTemplate;
-import com.jd.blockchain.utils.Bytes;
+
+import utils.Bytes;
+
import org.junit.Assert;
import org.junit.Test;
diff --git a/test b/test
index f240ea7d..876ccddf 160000
--- a/test
+++ b/test
@@ -1 +1 @@
-Subproject commit f240ea7d1dbe14f7b036fae2a7a9087359296d00
+Subproject commit 876ccddf69c432a6b2db1f5cd0a413648a69853a