Могу ли я использовать две версии Vaadin в одном проекте Maven (Vaadin7 и Vaadin8) - PullRequest
4 голосов
/ 08 апреля 2019

У меня есть рабочий проект с Dropwizard и Vaadin7 .Мне нужно использовать Vaadin8 в существующей среде без удаления кода vaadin7.Могу ли я запустить свой проект с использованием Vaadin7 и Vaadin8 обеих версий?Поскольку я новичок в Vaadin, может кто-нибудь помочь мне с некоторым руководством о том, как решить эту проблему?

<dependency>
    <groupId>com.vaadin</groupId>
    <artifactId>vaadin-themes</artifactId>
    <version>7.5.10</version>
</dependency>
<dependency>
    <groupId>com.vaadin</groupId>
    <artifactId>vaadin-client-compiled</artifactId>
    <version>7.5.10</version>
</dependency>
<dependency>
    <groupId>com.vaadin</groupId>
    <artifactId>vaadin-client</artifactId>
    <version>7.5.10</version>
</dependency>

Это моя текущая конфигурация vaadin

Ответы [ 2 ]

5 голосов
/ 08 апреля 2019

Вы не можете использовать две версии одной и той же зависимости в Maven, она займет первую.

Поскольку вы не используете COMMUNITY ADD-ONS в своем коде, не будет проблемой обновить версию до 8.

Я оставляю вам хорошее руководство, чтобы узнать, как обновить версии: Руководство по обновлению vaadin

3 голосов
/ 09 апреля 2019

Как уже отмечалось, в maven нельзя указывать две версии с одинаковой зависимостью, но в данном конкретном случае вы рассматривали возможность использования пакетов совместимости с Vaadin 8 Миграция на Vaadin 8 ? Тогда вы сможете получить доступ к классам, необходимым из инфраструктуры Vaadin 7, используя *.v7.* import. Как отмечено в ссылке выше:

Единственное изменение классов в пакетах совместимости - это изменение их пути к классам. Все классы совместимости можно найти в com.vaadin.v7. *. Например, совместимость TextField доступна через импорт-импорт com.vaadin.v7.ui.TextField, учитывая, что зависимости проекта были настроены на включение вариантов совместимости, как описано в предыдущем разделе.

Это не точное решение, которое вы ищете, но, надеюсь, поможет, по крайней мере, немного.

P.S. проблема, которая может возникнуть с этим путем, заключается в надстройках, если они не были перенесены в Vaadin8. Тогда вам нужно будет обновить наши собственные зависимости и заменить несовместимые.

...