小编Dav*_*ein的帖子

如何将 JAXB 导入 Java 11 IntelliJ (Gradle) 项目?

我一直在使用 JDK 8 的 Java 项目中使用 JAXB。迁移到 JDK 11 后,不再识别 JAXB 包名称。我也没有找到将 JAXB 添加为 gradle 中的依赖项的方法。如何将 JAXB 导入到我的项目中?

jaxb intellij-idea java-11

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

当提取函数的返回类型是根据特征定义时,如何提取 Rust 中函数的一部分?

问题

\n

我将 Rust 与 vscode 以及“Rust and Friends\nv1.0.0”引入的插件一起使用。

\n

我想使用提取函数技术重构一个长函数,但在某些情况下,IDE 无法计算出提取函数的返回类型。

\n

我认为原因是该类型是根据特征来描述的,并且不可能将该类型定义为返回类型。

\n

由于我是 Rust 新手,我预计我的评估不准确,因此我将提供一个示例。

\n

例子

\n

我正在使用回形针箱来设置 REST 服务器。\n配置服务器的部分如下所示:

\n
let server = HttpServer::new(move || {\n    let app = App::new()\n        .wrap(Logger::default())\n        .wrap_api()\n        .data(pool.clone());\n\n    let app = app.service(\n        web::scope(\xe2\x80\x9c/api\xe2\x80\x9d).service(\n            web::scope(\xe2\x80\x9c/customers\xe2\x80\x9d).service(\n                web::resource(\xe2\x80\x9c/transactions\xe2\x80\x9d)\n                    .route(web::get().to(schema_handlers::get_transactions))\n                    .route(web::post().to(schema_handlers::add_transaction)),\n            ),\n        ),\n    );\n    \n    let app = app.service(\n        web::scope(\xe2\x80\x9c/api\xe2\x80\x9d).service(\n            web::scope(\xe2\x80\x9c/admin\xe2\x80\x9d).service(\n                web::resource(\xe2\x80\x9c/permissions\xe2\x80\x9d)\n                    .route(web::get().to(schema_handlers::get_permissions))\n                    .route(web::post().to(schema_handlers::add_permission)),\n            ),\n        ),\n    );\n\n    app.with_json_spec_at("/api/spec").build()\n})\n.bind(format!("0.0.0.0:{}", port))?\n.run();\n
Run Code Online (Sandbox Code Playgroud)\n

paperclip 支持流畅的 API,以便可以链接所有服务定义,但我更愿意为我添加的处理程序的每个范围提取一个函数。

\n

这就是为什么我最初将单个流畅调用分成两个单独的作业。

\n

下一步是将每个let app = app.service (语句提取到一个函数中。

\n …

refactoring traits rust type-alias

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

标签 统计

intellij-idea ×1

java-11 ×1

jaxb ×1

refactoring ×1

rust ×1

traits ×1

type-alias ×1