java.io.FileNotFoundException当运行datomic确保交易者
问题描述:
我正在尝试学习datomic,并发现datomic安装和供应过程具有非常高的学习曲线。java.io.FileNotFoundException当运行datomic确保交易者
一个奇怪的问题,我有 - 我希望是由于一些愚蠢的错误 - 是当我试图运行datomic ensure-transactor
我得到一个文件未找到错误的属性文件。
你必须承认文件存在。如果这是一个权限问题,我甚至已经打开了文件的所有权限。
我的属性文件看起来像这样(有许可证编辑等) - 我正在尝试配置一个本地 dynamodb实例的设置。
################################################################
protocol=ddb-local
host=localhost
port=4334
################################################################
# See http://docs.datomic.com/storage.html
license-key=[license here]
################################################################
# See http://docs.datomic.com/storage.html
# DynamoDB storage settings
aws-dynamodb-table=datemo
# See http://docs.amazonwebservices.com/general/latest/gr/rande.html#ddb_region
# aws-dynamodb-region=us-east-1
# To use DynamoDB Local, change the protocol (above) to ddb-local.
# Comment out aws-dynamodb-region, and instead use aws-dynamodb-override-endpoint
aws-dynamodb-override-endpoint=localhost:8080
################################################################
# See http://docs.datomic.com/storage.html
# This role has read and write access to storage and
# is used by the transactor to read and write data. Optionally,
# this role also has write access to an S3 bucket used for log
# storage and to CloudWatch for metrics, if those features are
# enabled.
# (Can be auto-generated by bin/datomic ensure-transactor.)
aws-transactor-role=
################################################################
# See http://docs.datomic.com/storage.html
# This role has read-only access to storage and
# is used by peers to read data.
# (Can be auto-generated by bin/datomic ensure-transactor.)
aws-peer-role=
################################################################
# See http://docs.datomic.com/capacity.html
# Recommended settings for -Xmx4g production usage.
# memory-index-threshold=32m
# memory-index-max=512m
# object-cache-max=1g
# Recommended settings for -Xmx1g usage, e.g. dev laptops.
memory-index-threshold=32m
memory-index-max=256m
object-cache-max=128m
## OPTIONAL ####################################################
# Set to false to disable SSL between the peers and the transactor.
# Default: true
# encrypt-channel=true
# Data directory is used for dev: and free: storage, and
# as a temporary directory for all storages.
# data-dir=data
# Transactor will log here, see bin/logback.xml to configure logging.
# log-dir=log
# Transactor will write process pid here on startup
# pid-file=transactor.pid
## OPTIONAL ####################################################
# See http://docs.datomic.com/storage.html
# Memcached configuration.
# memcached=host:port,host:port,...
# memcached-username=datomic
# memcached-password=datomic
## OPTIONAL ####################################################
# See http://docs.datomic.com/capacity.html
# Soft limit on the number of concurrent writes to storage.
# Default: 4, Miniumum: 2
# write-concurrency=4
# Soft limit on the number of concurrent reads to storage.
# Default: 2 times write-concurrency, Miniumum: 2
# read-concurrency=8
## OPTIONAL ####################################################
# See http://docs.datomic.com/aws.html
# Optional settings for rotating logs to S3
# (Can be auto-generated by bin/datomic ensure-transactor.)
# aws-s3-log-bucket-id=
## OPTIONAL ####################################################
# See http://docs.datomic.com/aws.html
# Optional settings for Cloudwatch metrics.
# (Can be auto-generated by bin/datomic ensure-transactor.)
# aws-cloudwatch-region=
# Pick a unique name to distinguish transactor metrics from different systems.
# aws-cloudwatch-dimension-value=your-system-name
## OPTIONAL ####################################################
# See http://docs.datomic.com/ha.html
# The transactor will write a heartbeat into storage on this interval.
# A standby transactor will take over if it sees the heartbeat go
# unwritten for 2x this interval. If your transactor load leads to
# long gc pauses, you can increase this number to prevent the standby
# transactor from unnecessarily taking over during a long gc pause.
# Default: 5000, Miniumum: 5000
# heartbeat-interval-msec=5000
## OPTIONAL ####################################################
# The transactor will use this partition for new entities that
# do not explicitly specify a partition.
# Default: :db.part/user
# default-partition=:db.part/user
如果有任何人在那里,可以设置我直,它会被大加赞赏:我已经使用BREW(brew install dynamodb-local
)也安装dyanmodb本地。
答
答案在这里,原来是必须从datomic包的根目录运行ensure-transactor
。对于大多数(但不是全部)的datomic脚本来说,这显然是正确的。它似乎特别涉及一次性脚本,例如ensure-transactor
,您只会运行一次。