标签: crate

Rust 中的本地板条箱

我目前正在学习 Rust,为此我想创建自己的箱子并使用它。然而,Rust 找不到这个箱子。

\n

我有以下文件结构:

\n
\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80minimal\n\xe2\x94\x82    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Cargo.toml\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80src\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80main.rs\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80util\n    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80win\n        \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80Cargo.toml\n        \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80src\n            \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80lib.rs\n
Run Code Online (Sandbox Code Playgroud)\n

在最小文件夹中文件夹中我有我的主要项目。它看起来像这样:

\n

Cargo.toml

\n
[package]\nname = "minimal"\nversion = "0.1.0"\n[dependecies]\nwin = { path = "../util/win"}\n
Run Code Online (Sandbox Code Playgroud)\n

主程序.rs

\n
extern crate win; // ERROR: "Can\'t find crate for \'win\' rustc(E0463)"\nfn main() {\n    println!("Hello, World!");\n}\n
Run Code Online (Sandbox Code Playgroud)\n

我的库位于win文件夹中如下所示:

\n

文件Cargo.toml

\n
[package]\nname = "win"\nversion = "0.1.0"\n
Run Code Online (Sandbox Code Playgroud)\n

文件lib.rs

\n
pub type TestType = String;\n
Run Code Online (Sandbox Code Playgroud)\n

我的第一个假设是我在指定Cargo.toml依赖项中的路径时犯了一个错误。所以我试着稍微扭动它,但似乎不起作用。

\n

铁锈报告

\n
\n

找不到“win” …

local rust crate

6
推荐指数
1
解决办法
2960
查看次数

如何使用 crates.io 上没有的库?

我想使用这个库: https: //github.com/stepfunc/dnp3,但它不在 crates.io 上,它只有一个存储库,我无法实现它。我试图将它添加到我的Cargo.toml喜欢中[dependencies] dnp3 = "0.9.1",但它说它不存在,而且实际上它没有板条箱。在存储库中,它有一些示例,dnp3/exampleuse dnp3;好像它是一个板条箱一样。

我该如何使用这个?

rust rust-cargo crate dnp3

6
推荐指数
2
解决办法
2175
查看次数

从MySQL迁移到Crate

我花了一些时间尝试使用Crate - crate.io - 并且第一印象很好.如果我的理解是正确的,Crate是一个NoSQL DB,它提供了一个相当简洁的SQL接口来操作和查询数据库.太好了!

但是,在这个阶段,我有更多的问题而不是答案.这里有三个首发

  • Crate管理控制台很不错.但是,如何 - 如果有的话 - 我可以保护它除了设置IP表规则吗?
  • MySQL索引如何转换为Crate.我没有看到我可以继续使用UNIQUE索引,然后依赖UPDATE ... ON DUPLICATE KEY ... SQL语句
  • 最后,如果我正确地假设一旦我设置了一个集群,Crate将负责数据复制和同步,而我没有进一步的努力.因此,如果我在地理位置上分散了Crate群集节点,那么与同步相关的延迟问题会降低整个群集的性能吗?我正在设想readng /写入本地crate实例,但可以选择以后能够从另一个crate实例中恢复这些数据(同步不相关)

这些问题可能不完全"适合"SO格式,但考虑到年轻的箱子,我希望它们仍然被认为是可接受的.

mysql crate

5
推荐指数
1
解决办法
574
查看次数

编译错误:找不到`core`的板条箱

我正在使用 Rust 1.35.0 来尝试一些 Rust 示例,但我无法编译它,因为我不断收到以下消息:

error[E0463]: can't find crate for `core`
Run Code Online (Sandbox Code Playgroud)

我跑了rustc --explain E0463,我看到以下消息:

You need to link your code to the relevant crate in order to be able to use it
(through Cargo or the `-L` option of rustc example). Plugins are crates as
well, and you link to them the same way.
Run Code Online (Sandbox Code Playgroud)

这是我的 Cargo.toml:

[package]
name = "sensor-node"
version = "0.1.0"
authors = ["joesan <email@gmail.com>"]
edition = "2018"

[dependencies]
dwm1001 = "0.1.0"
panic-halt = "0.2.0" …
Run Code Online (Sandbox Code Playgroud)

rust rust-cargo crate

5
推荐指数
2
解决办法
7815
查看次数

如何在Giant Swarm上部署crate集群?

我一直试图在Giant Swarm上建立一个工作箱集群已经有一段时间了,但到目前为止还没有真正成功.

以下是我到目前为止的尝试:

  • 使用多播和部署包作为单个组件.如果此组件的所有实例最终都在同一主机上,这很有效,遗憾的是这不可靠.
  • 使用具有两个组件的单播,每个组件4300通过url 公开端口.这导致每个组件在发现间隔中接收消息(默认情况下每30秒).不幸的是,Giant Swarm只支持HTTP其url,因此所有消息都是来自HTTP组件发送的错误消息.

  • 使用具有两个组件的单播并尝试通过它们发现它们IPs.我将Giant Swarm依赖项从一个组件设置为另一个组件(不支持循环依赖项).我无法让这个工作,因为Giant Swarm不允许我在创建docker容器之前运行脚本(在此博客文章中用于在google云平台上运行crate)并且docker不支持双向链接.

在这一点上我没有想法,是否有关于板条箱或巨型群的遗漏?我到目前为止看到的类似工作的唯一例子是我上面链接的博客文章,它使用了我无法在Giant Swarm上使用的机制.

我将不胜感激任何关于如何使这项工作或想法朝着正确方向发展的意见.

docker crate giant-swarm

4
推荐指数
1
解决办法
485
查看次数

如何更好地理解 Rust 中的 Crate?

在这本书中 - Rust By Example,第 11 章:

crate 是 Rust 中的一个编译单元。每当 rustc some_file.rs 被调用时,some_file.rs 被视为 crate 文件

根据这本书,源文件怎么样?

Rust 参考 | 板条箱和源文件

编译模型以称为 crate 的工件为中心。每次编译都以源代码形式处理单个 crate,如果成功,则生成一个二进制形式的单个 crate:可执行文件或某种库。

Rust 编译器总是以单个源文件作为输入被调用,并且总是产生单个输出包。该源文件的处理可能导致其他源文件作为模块加载。源文件的扩展名为 .rs。

根据这个说法?我认为:

源文件(.rs 文件)--> 对应的 crate

就像:.java --> .class

现在我无法理解这个问题;我都在海上

rust crate

3
推荐指数
1
解决办法
180
查看次数

运行Crate时ElasticSearch API在哪里暴露?

我已成功在crate上安装了elasticsearch head插件,可以访问其Web UI,但无法连接.我希望能够使用它来可视化底层elasticsearch商店中的数据.有没有办法直接访问elasticsearch API,以便头部可以工作?

plugins elasticsearch crate

2
推荐指数
1
解决办法
190
查看次数

Crate是关系型数据库吗?

我一开始以为它不是关系数据库,但是当我读到我可以连接表并且它写在他们的网站https://crate.io/overview/(参见用例)之后,我不确定。

尤其是我对这句话感到困惑:

CrateDB 基于 NoSQL 架构,但具有标准 SQL。

来自https://crate.io/overview/high-level-architecture/

database relational-database nosql crate

2
推荐指数
1
解决办法
1102
查看次数

使用Crate blob表上传图像

是否真的可以使用Crate Blob表上传图像.我发现这个链接(https://crate.io/docs/reference/blob.html)能够在blob表上上传文本.

同样,我希望将图像上传到包装箱Blob表.我找不到这样做的方法.有人可以帮忙吗?

谢谢,拉梅什

blob crate

0
推荐指数
1
解决办法
273
查看次数

如何获取ResultSet字符串数组?

我有一个查询,该查询命中具有数组列的表。在处理记录时,我想获取数组列的数据并将其视为字符串数组并获取第一个值。我以为我可以做以下事情:

while (resultSet.next()) {
    val clients = resultSet.getArray("clients")
    println(clients[0])
}
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,我得到了错误:

错误:(34,3)Kotlin:未解决的参考。由于接收者类型不匹配,以下候选者都不适用:@InlineOnly公共运营商inline fun <@OnlyInputTypes K,V> Map.get(key:Int):??? 在kotlin.collections中定义@SinceKotlin公共运算符fun MatchGroupCollection.get(name:String):MatchGroup吗?在kotlin.text中定义

getArray返回类型,Array!所以我假设我可以按索引访问值。我需要做什么才能访问此值数组?

java kotlin crate

0
推荐指数
1
解决办法
731
查看次数