尝试使用docker-composer up命令设置锯齿供应链,但出现以下错误。在版本0.10.1的Windows 10笔记本电脑上运行。
我已经从https://github.com/hyperledger/sawtooth-supply-chain下载了文件,并按照readme.md文件进行了设置。

当我查找文件'/sawtooth-supply-chain/ledger_sync/index.js'时,我收到一个JavaScript语法错误,代码为800A03EA,源代码为Microsoft JScript编译错误。
有人可以帮忙吗?

`supply-ledger-sync | module.js:549
supply-ledger-sync | throw err;
supply-ledger-sync | ^
supply-ledger-sync |
supply-ledger-sync | Error: Cannot find module '/sawtooth-supply-chain/ledger_sync/index.js'
supply-ledger-sync | at Function.Module._resolveFilename (module.js:547:15)
supply-ledger-sync | at Function.Module._load (module.js:474:25)
supply-ledger-sync | at Function.Module.runMain (module.js:693:10)
supply-ledger-sync | at startup (bootstrap_node.js:188:16)
supply-ledger-sync | at bootstrap_node.js:609:3
supply-shell | npm ERR! path /sawtooth-supply-chain/asset_client/package.json
supply-shell | npm ERR! code ENOENT
supply-shell | npm ERR! errno -2
supply-shell | npm ERR! syscall open
supply-rethink | Listening for client driver connections on port 28015
supply-server | module.js:549
supply-server | throw err;
supply-server | ^
supply-server |
supply-server | Error: Cannot find module '/sawtooth-supply-chain/server/index.js'
supply-server | at Function.Module._resolveFilename (module.js:547:15)
supply-server | at Function.Module._load (module.js:474:25)
supply-server | at Function.Module.runMain (module.js:693:10)
supply-server | at startup (bootstrap_node.js:188:16)
supply-server | at bootstrap_node.js:609:3
supply-rethink | Listening for administrative HTTP connections on port 8080
supply-shell | npm ERR! enoent ENOENT: no such file or directory, open '/sawtooth-supply-chain/asset_client/package.json'
supply-shell | npm ERR! enoent This is related to npm not being able to find a file.
supply-shell | npm ERR! enoent'

/sawtooth-supply-chain/server/index.js中index.js中的代码如下:
/**
 * Copyright 2017 Intel Corporation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ----------------------------------------------------------------------------
 */
'use strict'

const express = require('express')
const db = require('./db')
const blockchain = require('./blockchain')
const protos = require('./blockchain/protos')
const api = require('./api')
const config = require('./system/config')

const PORT = config.PORT
const app = express()

Promise.all([
  db.connect(),
  protos.compile(),
  blockchain.connect()
])
  .then(() => {
    app.use('/', api)
    app.listen(PORT, () => {
      console.log(`Supply Chain Server listening on port ${PORT}`)
    })
  })
  .catch(err => console.error(err.message))

问候
加内什·巴特

最佳答案

我不知道上述解决方案,但是如果您安装了VirtualBox之类的VM,然后在VirtualBox中使用Docker和docker-compose运行Sawtooth,您会发现它容易得多。

关于javascript - Jscript语法错误-代码800A03EA-Microsoft JScript编译-锯齿供应链-Windows 10,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50168681/

10-12 06:39