【问题标题】:Dart with Maven (in Spring Boot App)Dart 与 Maven(在 Spring Boot 应用程序中)
【发布时间】:2015-04-25 05:49:21
【问题描述】:

我喜欢 Dart,我已经玩了一段时间了。我想与我基于 Spring Boot 的 Maven Web 应用项目集成。

我想正确的方法是使用 dart-maven-plugin。但我不确定如何正确地将其粘合到位。 Spring Boot 有自己的结构,Maven 也有,而 Dart 也让这一切变得更好。

我可能需要 Dart 部分的入口点,这意味着 Spring Boot 模板文件夹需要包含来自 Dart 的 html 资源。

我将不胜感激任何想法和最佳实践。

PS:前面提到的 dart-maven-plugin 不是很生动,我应该害怕使用它,因为与 Dart 本身相比,我没有看到任何进步。

更新

所以这可以是解决方案(请注意,到目前为止,我只有一个所谓的“入口点”- .dart 文件)

  1. src/main/dart 中的正常 Dart 结构
  2. 用户 dart-maven-plugin 的 pub build 命令到 ${project.build.directory}/dart
  3. maven-resources-plugin:从 ${project.build.directory}/dart/web 复制资源到 ${project.build.directory}/classes/public/
  4. 发动战争

我仍然可以从 src/main/dart 使用 Intellij 的 Dart 集成。 Spring Boot 将 classes/public/ 文件夹映射到 / 以便正确加载 dart 文件和 html 文件。

这并不理想,但到目前为止还有效。请随意写下任何 cmets。

【问题讨论】:

  • 认为我的 src/main/dart 文件夹遵循 Dart 结构,所以我可以直接从那里开发,但问题是在我想将 dart2js`ed .js 文件移动到 Spring Boot 之后与 html 相同,因为其中的链接不适合:(
  • 我认为 Gradle 更灵活,更适合您的需求,请参阅我的github.com/sdeleuze/opensnap GitHub 存储库以获取真实示例。
  • 更改构建系统,可以是选项,虽然不是我的情况。问题也是如何使用已编译的 dart.js 并且仍然能够像 dev 一样使用 dart 结构。
  • @SébastienDeleuze 看起来您的项目具有完全独立的 Dart 部分,并且您没有使用 dart2js。我需要 .js 能够在不同的浏览器上运行。
  • 我用的是dart2js,Java部分有一个profile可以在dev模式下直接使用Dart文件。

标签: maven dart spring-boot


【解决方案1】:

我自己尝试过几次在 maven 项目中使用 dart,但总是遇到一些问题。现在,我正在使用 pub 构建的单独模块中开发我的 dart 应用程序,该模块连接到基于 maven 的 java 后端并带有 rest。

这对我来说有几个好处,例如:

  • 我可以使用 pub 并避免与过时的 maven 插件有关的问题
  • 我使用最适合静态 dart 代码和资产的服务机制(在我的例子中是带有 nginx 的 docker 映像)
  • 我使用定制的 REST API 将后端和前端代码完全分离

由于我喜欢微服务方法,我还将 spring session 与 zuul 一起使用(通过 spring-cloud)。

如果您想将 dart 与从例如 JSP 或其他模板引擎生成的 html 结合起来,那么这对您来说不是一个好方法。但是恕我直言,飞镖还不太适合这种架构。

【讨论】:

    猜你喜欢
    • 2019-07-25
    • 2019-08-10
    • 2018-05-13
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-26
    • 1970-01-01
    相关资源
    最近更新 更多