不同版本的Vaadin@JavaScript

不同版本的Vaadin@JavaScript,vaadin,vaadin8,Vaadin,Vaadin8,我使用Vaadin@JavaScript注释为我的应用程序加载JavaScript文件。它工作得很好,但我需要为不同的构建加载不同的JavaScript。 这个想法是要有这样的东西: @JavaScript("url.from.properties.or.pom") 所以对于DEV,我会得到@JavaScript(“”),对于PROD@JavaScript(“”)。脚本url值应取自application.properties或pom.xml 我想不出怎么做。我使用Vaadin 8搭配Mave

我使用Vaadin@JavaScript注释为我的应用程序加载JavaScript文件。它工作得很好,但我需要为不同的构建加载不同的JavaScript。 这个想法是要有这样的东西:

@JavaScript("url.from.properties.or.pom")
所以对于DEV,我会得到@JavaScript(“”),对于PROD@JavaScript(“”)。脚本url值应取自application.properties或pom.xml


我想不出怎么做。我使用Vaadin 8搭配Maven和Spring战靴。谢谢你。

< P>你没有直接支持你想做什么,但是我可以想出三种不同的解决方案,你可以考虑。
  • 注册一个
    DependencyFilter
    ,根据情况动态地从注释重写依赖项URL
  • 为每种情况创建单独的Java类(所有实际功能都在一个共享的超类中)。然后,您可以使用运行时逻辑或使用不同的Spring配置来选择要使用的类
  • 删除
    @JavaScript
    注释,而是从
    onAttach
    调用
    JavaScript.eval
    ,以某种方式动态注入所需的脚本