当前位置: 首页 > 知识库问答 >
问题:

在流中获取Vaadin版本

谭京
2023-03-14

在Vaadin 8中,我能够检索版本信息

com.vaadin.shared.Version.getFullVersion()

在Vaadin Flow中,我找不到获得当前版本的方法,至少不是我期望的版本。我找到了这个

com.vaadin.flow.server.Version.getFullVersion()

但是返回值是1.2.2,而不是预期的12.0.0。我猜是服务器版本还是别的什么。。

如何在vaadin流中正确获取使用过的vaadin框架版本?

共有3个答案

田巴英
2023-03-14

如果您想显示Vaadin版本而不是Flow版本,我可以看到一个选项来实现它,但它需要更多的代码和一些maven配置。

你应该

  • 创建一个属性文件,包括一行vaadin.version=${vaadin.version}
  • 确保文件包含在maven-resource-plugin过滤的资源中,在构建配置中使用以下内容:
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>**/config.properties</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
                <excludes>
                    <exclude>**/config.properties</exclude>
                </excludes>
            </resource>
        </resources>
  • 读取属性文件并获取版本属性的值
Properties properties = new Properties();
properties.load(MainView.class.getResourceAsStream("config.properties"));
properties.get("vaadin.version");
柯振濂
2023-03-14

从10开始,Vaadin版本没有自己的任何内容,甚至没有版本号标记。这只是一组经过测试可以很好地协同工作的依赖版本。

com.vaadin.flow.server.Version.getFullVersion()给出Vaadin Flow依赖项的版本。在大多数情况下,出于技术目的,这是一个更相关的版本号。

Vaadin 10和Vaadin 11使用Flow 1.0. x,而Vaadin 12使用1.2. x版本。Vaadin 13最有可能使用Flow版本1.3. x或2.0. x,这取决于届时将包含多大的更改。

唐泳
2023-03-14

获得Vaadin版本的一种可能方法是使用

VaadinCoreShrinkWrap.class.getAnnotation(NpmPackage.class).version()

不是最优的,但它应该有效。

这种方法从Vaadin 14开始工作。它将导致旧版本的错误。

 类似资料:
  • Vaadin dev ticket#9505说,已经添加了方法来获取当前的VaadinServlet、VaadinPortlet等等。 然而,我在类文档中没有看到任何这样的方法。例如,这两个页面: https://vaadin.com/api/com/vaadin/server/VaadinServletRequest.html https://vaadin.com/api/com/vaadin/

  • Vaadin已经有了7.5.8版,但是插件似乎使用了7.5.2版(https://grails.org/plugin/vaadin).我有没有办法得到最新版本的Vaadin?

  • 在我更改了pom.xml文件的vaadin版本号和vaadin插件版本号后,构建失败 然后,我尝试清理并重建项目,但构建失败表明: [Help 1]的链接没有给出任何错误的线索。如果我回到以前版本的vaadin 7.3.10,项目运行得很好

  • 问题内容: 我正在使用Jenkins 1.596,Workflow 1.3和Svn插件2.5。我正在尝试在工作流程脚本中获取svn修订版号。 我的工作流脚本部分为: 在这里,您会看到两次尝试:第一个尝试打印“ java.io.IOException:无法运行程序“ svn”:error = 2,没有这样的文件或目录”,第二个提示“没有找到名为Svn的工具”(我也尝试了“颠覆”)。尝试打印“空”。

  • 问题内容: 我正在尝试在PowerShell中获取Java版本。版本字符串将打印到 stderr ,因此我试图将其重定向到stdout并将其分配给字符串变量。 我收到以下奇怪的错误: 不带重定向的呼叫(2>&1)给出以下信息: 我认为这里的Java是无关紧要的,其他任何将字符串打印到stderr的程序也会发生同样的情况。 我使用的PowerShell版本是 2.0 。 问题: 如何将stderr重

  • 我在一个具有特定ID的div中使用javascript创建了一个SVG元素。我的主要目标是获得SVG图像,让用户下载它。 因此,我的想法可能是绝对错误的,是使用,获取子元素,这是我的SVG,然后执行以获取字符串并将其保存到某个位置。我可以看到元素,我知道它在那里,但当我从vaadin打印容器元素时,它没有任何子元素。 我的情况: 我从内容中得到什么,其中是我的DIV,ID: 我错过了什么? 如果这