Dart:如何设置项目

时间:2014-08-22 10:30:19

标签: java eclipse dart dart-pub

由于我自己尝试建立一个Dart项目,我认为我错过了一些基本的东西,因为我没有成功。所以我仍然需要社区的帮助。

  1. 来自GWT我习惯于单个应用程序形成一个运行的JS文件,并且一旦应用程序识别出HTML元素就会增加它。
  2. 通常会有两个JS文件,一个用于用户前端和Web应用程序后端应用程序。
  3. 我想在开发期间使用增量构建的解决方案(我猜Dart在Dartium中使用时提供)
  4. 我有一个内部Web框架,我想要启动并用于发送Dartium会话的Dart文件。这将如何集成并干扰调试会话?
  5. 有关网络框架的更新:

    Web框架是一个基于组件的渲染引擎,包括数据库,并使用自己的资源管理,包括与http相关的所有内容,如设置缓存标志等。其大约1.5 MB,1200+测试。从简单的servlet开始,它只需要你需要的一切。它也使用嵌入式码头。

    这里的相关性是我需要知道调试器如何连接到Dartium以及它如何在实例运行后找到文件并提供包含dartium源的html文件,那么如何在给定的时候启动自己的Web服务器端口还有dartium调试功能吗?

    关于以前答案的更新:

    我尝试了但是在两天后放弃了解更多并做了其他一些事情。我只是不知道为什么不能将一个简单的文件添加到我的Dart模块的根包中,就像旧的package.html(javadoc)文件一样。然后我将Dart库添加到我的项目中,Dart插件将所需的Dart特性添加到项目中并创建一个构建器条目。为什么我要做所有模糊测试。或者甚至更好的为什么我只是注释我的模块的主类来形成一个模块,所以我可以完全替换额外的文件?

    我想Dart插件已经有了Dart代码的模型,所以发现在Eclipse中即时完成。

    我也不知道为什么我不能将我的dart代码放在像src / dart / main和src / dart / test这样的dart源文件夹中。

    或者这可能吗?我仍在努力完成这项工作。我将使用全新的Eclipse 3.8安装,并检查我是否可以让Dartium工作。只是安装插件接缝不是为了做到这一点。

    关于JS生成的更新:

    我无法理解为什么Dart不提供JS文件的增量构建。即使它是单个文件。解压缩给定的编译步骤应该不难。我想这将是独立编译每个源文件并将它们链接在一起,做一些树摇动和完成的事情。如果可以做到这一点会很棒。记住,可以在内存(或磁盘)上保存输出文件的模型,并知道js的哪个部分与哪个源文件相关。然后只需查找链接符号表并回写已更改的部分。

    对我来说,Dart的杀手功能就是我所概述的配置的简易性以及JS文件的增量构建,这使得在JS中共同开发变得简单。我想最终两个JS文件的总和大约是750kb。所以所有带有额外压缩的东西都不会强迫我升级我的8GB内存或者会对我的SSD造成压力(在突发模式下写入时为350MB /秒)。

    这是否有任何工作计划?将Dart作为JS创建的最终解决方案会很棒但是说实话我不明白为什么GWT是以这种方式创建JS的方式。 GWT的增量构建和简易设置也是受欢迎的。

1 个答案:

答案 0 :(得分:2)

  1. 似乎不是一个问题......

  2. 在Dart中,您通常有一个JS文件,因为服务器上的Dart运行本机(没有转换)

  3. 使用Dartium,您根本没有构建,因为它本身也运行Dart。 您只为部署构建JavaScript(当然,在部署之前测试构建输出)。

  4. 调试由Dartium本身完成(如果需要,您可以使用不带DartEditor的Chrome DevTools调试器)。 DartEditor访问Dartium的调试器API并充当远程显示/控件。 支持调试从其他Web服务器加载的Web客户端 可能导致某些工作的原因是设置自定义Web服务器,以便将对源文件的请求转发到DartEditor(或独立)使用的Web服务器pub servepub serve运行变换器(即时代码转换/生成)。一些框架依赖于在代码上运行变换器以使其正常运行。

  5. 我不知道这意味着什么,但我不使用Eclipse / Dart插件。

    [Update regarding the former answers] I tried it but after two 
    days gave up to learn more and do some other stuff. I just dont
    know why it is just not possible to add a simple file to the 
    root package of my module like the good old package.html file
    for the java docs and then all i do is add the Dart libaries
    to my project and the Dart plugin adds the nature to it and
    creates a builder entry, done. Why do I have to do all the fuzz.
    Or even better why cant I just annotate my Module's main class
    to form a module and so I can replace the extra files?
    

    要将Dart与Java项目集成,请创建独立于项目的Dart项目,并将Dart构建输出移动到您拥有其他静态文件的目录。

    虽然开发将您的网络服务器配置为转发到pub serve,如上所述。

    正如我在第一个回答中所述,

    [Update regarding the JS generation] I can not understand why
    dartium is not offering an incremental build of JS files. Even
    if it is a single file. It should not be that hard to debundle
    the given compile steps. I guess it will be something like
    compile a single file and link those then the magical tree
    shake and done
    

    无关紧要。在开发过程中,您不会对JavaScript执行任何操作。 如果您使用非Dartium浏览器加载页面pub serve将提供服务 构建JavaScript而不是Dart。增量构建正在进行中 提高响应能力。但是增量构建不可用 用于生成文件(无论如何都会有意义)。