add readme

This commit is contained in:
CaiHQ 2021-12-07 17:00:03 +08:00
parent e28d52aba0
commit a536e8e11f
4 changed files with 37 additions and 16 deletions

View File

@ -6,6 +6,11 @@ idea开发合约的示例。
#### 软件架构 #### 软件架构
软件架构说明 软件架构说明
#### 配置cp 的lib
做一个软链接将cp-bundle的build/output 软链接到
backend/cplibs。
#### 前端sdk说明 #### 前端sdk说明
1. 如何使用javascript sdk 1. 如何使用javascript sdk
@ -19,11 +24,9 @@ idea开发合约的示例。
#### 后端常用方法说明 #### 后端常用方法说明
##### 配置cp 的lib
##### 调用相同CP的yjs代码 ##### 调用相同CP的yjs代码
参考:
Hello.callYJSInSameCP
##### 调用其他CP的yjs代码 ##### 调用其他CP的yjs代码
参考:
##### 分片 Hello.callYJSInOtherCP

2
backend/.gitignore vendored
View File

@ -1,5 +1,7 @@
/.DS_Store/ /.DS_Store/
/build/ /build/
/cplibs/
cplibs
# Compiled class file # Compiled class file
*.class *.class

View File

@ -36,6 +36,8 @@ sourceSets {
dependencies { dependencies {
api 'org.apache.logging.log4j:log4j-core:2.14.1' api 'org.apache.logging.log4j:log4j-core:2.14.1'
api 'org.apache.logging.log4j:log4j-api:2.14.1' api 'org.apache.logging.log4j:log4j-api:2.14.1'
implementation fileTree(dir: 'cplibs', include: '*.jar')
implementation fileTree(dir: 'cplibs/lib/', include: '*.jar')
testImplementation 'junit:junit:4.13.2' testImplementation 'junit:junit:4.13.2'
} }
@ -49,15 +51,15 @@ task copyYJS(type: Copy) {
into "./build/output/" into "./build/output/"
} }
task sourcesJar(type:Jar) { task sourcesJar(type: Jar) {
from sourceSets.main.allJava from sourceSets.main.allJava
archiveClassifier = 'sources' archiveClassifier = 'sources'
} }
task copyAssets(type: Copy){ task copyAssets(type: Copy) {
from "../front" from "../front"
into "./build/output/assets/" into "./build/output/assets/"
} }
task mergeJar(dependsOn: ["sourcesJar", "jar"]){ task mergeJar(dependsOn: ["sourcesJar", "jar"]) {
doLast { doLast {
org.bdware.datanet.YPKPacker.mergeJar("./backend/build/libs/$project.name-${project.version}.jar", org.bdware.datanet.YPKPacker.mergeJar("./backend/build/libs/$project.name-${project.version}.jar",
"./backend/build/libs/$project.name-${project.version}-sources.jar", "./backend/build/libs/$project.name-${project.version}-sources.jar",
@ -68,21 +70,21 @@ task mergeJar(dependsOn: ["sourcesJar", "jar"]){
task copyJar(type: Copy, dependsOn: ["mergeJar", ":backend:copyLibs"]) { task copyJar(type: Copy, dependsOn: ["mergeJar", ":backend:copyLibs"]) {
from "./build/libs/$project.name-${project.version}-all.jar" from "./build/libs/$project.name-${project.version}-all.jar"
into "./build/output" into "./build/output"
rename { String fileName -> "gateway.jar" } rename { String fileName -> "sc-example.jar" }
doFirst { doFirst {
println "copyJar start" println "copyJar start"
} }
} }
task buildZip(type: Zip, dependsOn: ["copyAssets","copyJar", "copyYJS"]) { task buildZip(type: Zip, dependsOn: ["copyAssets", "copyJar", "copyYJS"]) {
from './build/output/' from './build/output/'
duplicatesStrategy = DuplicatesStrategy.INCLUDE duplicatesStrategy = DuplicatesStrategy.INCLUDE
archiveFileName = 'contractexample.zip' archiveFileName = 'contractexample.zip'
destinationDirectory = file('build/') destinationDirectory = file('build/')
} }
task buildYPK (dependsOn:["buildZip"]){ task buildYPK(dependsOn: ["buildZip"]) {
doLast { doLast {
org.bdware.datanet.YPKPacker.staticPack("./backend/build/contractexample.zip","./backend/build/contractexample.ypk") org.bdware.datanet.YPKPacker.staticPack("./backend/build/contractexample.zip", "./backend/build/contractexample.ypk")
} }
} }

View File

@ -1,12 +1,26 @@
package org.bdware.sc.contractexample; package org.bdware.sc.contractexample;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.bdware.sc.ContractProcess;
import org.bdware.sc.boundry.JavaScriptEntry;
public class Hello{ public class Hello {
private static final Logger LOGGER = LogManager.getLogger(Hello.class); private static final Logger LOGGER = LogManager.getLogger(Hello.class);
public static void main(String[]args){ public static void main(String[] args) {
LOGGER.info("abc"); LOGGER.info("abc");
} }
public static String call(){return "hello..dafdskf";}
public static String call() {
return "hello..dafdskf";
}
public static String callYJSInSameCP() {
return ContractProcess.instance.executeContract("{\"action\":\"getOwner\"\",\"arg\":\"\"}");
}
public static Object callYJSInOtherCP() {
return JavaScriptEntry.executeContract("cid", "action", "arg");
}
} }