Знаток включает Банку JavaDoc в блок

Один способ использовать SVD для сокращения шума состоит в том, чтобы сделать разложение, установить компоненты, которые являются близким нулем, чтобы быть точно нулем, затем реконструировать.

Вот учебное руководство онлайн на SVD.

Вы могли бы хотеть смотреть на Числовые Рецепты .

5
задан starblue 8 October 2009 в 08:54
поделиться

2 ответа

Выяснил решение, которое, похоже, работает (по крайней мере, в опубликованном мною примере приложения). Я изменил записи включения / исключения в файле сборки использовать подстановочный знак только для типа, и сборка теперь ведет себя точно так, как ожидалось. Файл JavaDoc JAR не помещается в каталог lib, а документы JavaDocs распаковываются должным образом.

Окончательный файл сборки выглядит следующим образом:

<assembly>
  <id>bin</id>
  <formats>
 <format>jar</format>
  </formats>
  <includeBaseDirectory>false</includeBaseDirectory>

  <dependencySets>
    <dependencySet>
      <excludes>
        <!-- Exclude the Jars that are included in later sections -->
        <exclude>test:module1:*:javadoc</exclude>
      </excludes>
      <outputDirectory>lib</outputDirectory>
      <unpack>false</unpack>
      <useTransitiveDependencies>true</useTransitiveDependencies>
      <useTransitiveFiltering>false</useTransitiveFiltering>
      <useProjectArtifact>false</useProjectArtifact>
    </dependencySet>

    <dependencySet>
      <includes>
        <include>test:module1:*:javadoc</include>
      </includes>
      <outputDirectory>docs</outputDirectory>
      <unpack>true</unpack>
      <useTransitiveDependencies>true</useTransitiveDependencies>
      <useProjectArtifact>false</useProjectArtifact>
      <useStrictFiltering>true</useStrictFiltering>
    </dependencySet>
  </dependencySets>
</assembly>

Обновить : Некоторое быстрое тестирование показало, что тип файлов JavaDoc Jar, по крайней мере, если на них имеется ссылка из полной сборки, является «javadoc». Однако, когда модуль пакета запускается автономно, этот тип не распознается и не может быть получен из локального репозитория. Таким образом, похоже, что для того, чтобы получить оба режима сборки (как часть общей сборки и при построении независимо), вы должны указать подстановочный знак для файлов JavaDoc Jar в сборке.

5
ответ дан 13 December 2019 в 05:38
поделиться

Проблема с шаблоном идентичности test: module1: jar: javadoc , который используется для исключения и включения зависимостей как в , так и в показано в трассировке сбоя сборки:

[WARNING] The following patterns were never triggered in this artifact exclusion filter:
o  'test:module1:jar:javadoc'

[WARNING] The following patterns were never triggered in this artifact inclusion filter:
o  'test:module1:jar:javadoc'

Честно говоря, я не вижу, что не так с шаблоном test: module1: jar: javadoc : он соответствует groupId: artifactId: type [: classifier] формат и выглядит абсолютно нормально (может это быть ошибкой?). Но дело в том, что он не соответствует ни одной зависимости, и это вызывает две проблемы:

  1. javadoc jar не исключается и будет в lib рядом с другим jar,
  2. ничего не будет было распаковано в документы , и это приводит к сбою сборки.

Фактически, единственный способ заставить все это работать - это использовать шаблон с подстановочным знаком (точнее *: javadoc ). Ниже обновленный дескриптор сборки:

<assembly>
  <id>bin</id>
  <formats>
    <format>jar</format>
  </formats>
  <includeBaseDirectory>false</includeBaseDirectory>

  <dependencySets>
    <dependencySet>
      <excludes>
        <!-- Exclude the Jars that are included in later sections -->
        <exclude>*:javadoc</exclude>
      </excludes>
      <outputDirectory>lib</outputDirectory>
      <unpack>false</unpack>
      <useTransitiveDependencies>true</useTransitiveDependencies>
      <useTransitiveFiltering>false</useTransitiveFiltering>
      <useProjectArtifact>false</useProjectArtifact>
    </dependencySet>

    <dependencySet>
      <includes>
        <include>*:javadoc</include>
      </includes>
      <outputDirectory>docs</outputDirectory>
      <unpack>true</unpack>
      <useTransitiveDependencies>true</useTransitiveDependencies>
      <useProjectArtifact>false</useProjectArtifact>
      <useStrictFiltering>true</useStrictFiltering>
    </dependencySet>
  </dependencySets>
</assembly>

Не уверен, что этого будет достаточно, но, по крайней мере, он работает и дает ожидаемый результат.

4
ответ дан 13 December 2019 в 05:38
поделиться
Другие вопросы по тегам:

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