Как прочитать файл внешних свойств в Maven

Если вы используете Python 3, вам не нужно. Посмотрите раздел Документов Python на Настройка поведения Parser . По умолчанию configparser использует «:» и «=» в качестве разделителей, но при создании объекта configparser вы можете указать разные разделители:

import configparser

parser = configparser.ConfigParser(delimiters=('?', '*'))

В этом примере разделители по умолчанию были заменены на вопросительный знак и звездочку. Вы можете изменить разделители на любые символы, которые вы хотите, которые не будут конфликтовать с информацией, необходимой для размещения в файле конфигурации.

Вышеуказанный метод будет работать только для Python 3, так как Python 2 ConfigParser жестко закодирован, чтобы распознавать одинаковые знаки и двоеточия в качестве разделителей. Согласно этот вопрос SO , имеется резервный конфигуратор, доступный для 2,2-intrereter в https://pypi.python.org/pypi/configparser . Посмотрите, будет ли это работать для вас.

120
задан Hamedz 20 June 2016 в 09:47
поделиться

3 ответа

92
ответ дан 24 November 2019 в 01:25
поделиться

Используя предлагаемый плагин свойств Maven, я смог прочитать файл buildNumber.properties, который я использую для версии своих сборок.

  <build>    
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>properties-maven-plugin</artifactId>
        <version>1.0-alpha-1</version>
        <executions>
          <execution>
            <phase>initialize</phase>
            <goals>
              <goal>read-project-properties</goal>
            </goals>
            <configuration>
              <files>
                <file>${basedir}/../project-parent/buildNumber.properties</file>
              </files>
            </configuration>
          </execution>
        </executions>
      </plugin>
   </plugins>
54
ответ дан 24 November 2019 в 01:25
поделиться

Этот ответ на аналогичный вопрос описывает, как расширить плагин свойств, чтобы он мог использовать удаленный дескриптор для файла свойств. Дескриптор - это в основном артефакт jar, содержащий файл свойств (файл свойств включен в src / main / resources).

Дескриптор добавляется как зависимость к расширенному плагину свойств, поэтому он находится в пути к классам плагина. Плагин будет искать в пути к классам файл свойств, считывать содержимое файла в экземпляр свойств и применять эти свойства к конфигурации проекта, чтобы их можно было использовать в другом месте.

4
ответ дан 24 November 2019 в 01:25
поделиться
Другие вопросы по тегам:

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