Почему делает зависимость с “обеспеченным” объемом, скрывают переходные зависимости в Знатоке?

SQL Server генерирует оптимизированный план относительно каждого оператора, который он выполняет. Вы не должны приказывать, чтобы Ваш где пункт извлек ту пользу. Единственный garuntee, который Вы имеете, - то, что это выполнит операторы в порядке так:

SELECT A FROM B WHERE C
SELECT D FROM E WHERE F

выполнит первую строку перед вторым.

12
задан Hanno Fietz 15 October 2009 в 17:45
поделиться

3 ответа

модель и постоянство, очевидно, зависят от javax.persistence, но приложение, я думаю, не должно.

Это правда. Но разрешение транзитивных зависимостей не имеет ничего общего с вашей проблемой (и на самом деле javax. постоянство предоставляется для модели и персистентность , от которой приложение зависит с компилируемой областью, так что это опущено, как описано в 3.4.4. Transitive Dependencies ).

На мой взгляд, вы стали жертвой этой ошибки: http://bugs.sun.com/view_bug.do?bug_id=6550655

У меня такие же проблемы с EJB3 сущность, использующая аннотацию наследования: @Inheritance (strategy = InheritanceType.SINGLE_TABLE)

Класс клиента, использующий эту сущность, не будет компилировать, когда аннотации ejb3 не в пути к классам, но сбой с следующее сообщение: com.sun.tools.javac.code.Symbol $ CompletionFailure: файл класса для javax.persistence.InheritanceType not найдено

[...]

Обратите внимание, что это частный случай ошибки 6365854 (сообщается, что она исправлена); проблема здесь, кажется, в том, что аннотация использует перечисление в качестве своего значения.

Текущий обходной путь заключается в добавлении недостающего перечисления в CLASSPATH.

В вашем случае «менее худший» способ сделать это - добавить javax.persistence , поскольку обеспечивает зависимость для модуля application . Но это обходной путь к ошибке JVM, приложение не должно нуждаться в этой зависимости для компиляции.

12
ответ дан 2 December 2019 в 20:41
поделиться

dependencyManagement [ Раздел 1113863] объявляет, как будут выглядеть зависимости, если вы их используете, а не то, что вы будете их использовать. Таким образом, вам все равно нужно объявить минимальное объявление зависимости, чтобы конфигурация применялась в вашем дочернем проекте. См. Подробности в разделе управления зависимостями книги Maven.

Как правило, требуется минимум groupId и artifactId.

Если вы хотите наследовать конфигурацию, не объявляя ее вообще, вы должны определить ее в родительском разделе dependencies , а не в dependencyManagement

1
ответ дан 2 December 2019 в 20:41
поделиться

ммм, потому что предоставленные зависимости не являются транзитивными? это встроенное поведение maven.

2
ответ дан 2 December 2019 в 20:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: