Как настроить Android Studio для включения папки конфигурации, содержащей pom. xml в проект? - PullRequest
8 голосов
/ 12 июля 2020

Я пытаюсь настроить конфигурацию проекта TeamCity в виде кода, используя Kotlin DSL https://blog.jetbrains.com/teamcity/2019/03/configuration-as-code-part-1-getting-started-with-kotlin-dsl/

Я создал образец проекта в TeamCity, указывающий на пустой Android Проект студии с пустым Activity, который я опубликовал в Github. Я включил конфигурацию Kotlin DSL в TeamCity GUI для этого проекта.

После этого TeamCity зафиксировала папку .teamcity в моем проекте Android Studio через Git, содержащую pom.xml . Эта папка является верхней папкой проекта и находится в root вместе с модулем app. Однако, когда я проверяю код в settings.kts, IDE не дает мне никаких подсказок. Я не могу использовать автозаполнение для кода конфигурации Kotlin DSL, у меня нет специального форматирования или проверок времени кода в моей среде IDE

Я пытался следовать вышеупомянутому руководству блога, но, к сожалению, не могу щелкните правой кнопкой мыши файл pom.xml и не увидите никаких опций для Add as Maven в Android Studio. Кроме того, я не вижу, чтобы в мой проект добавлялись внешние библиотеки, связанные с TeamCity DSL, что, конечно, означает, что зависимости из файла pom.xml не обрабатывались.

Я использую Android Studio 4.0

Это pom.xml, который TeamCity добавил в мой проект Android Studio (в папке .teamcity):

<?xml version="1.0"?>
<project>
  <modelVersion>4.0.0</modelVersion>
  <name>KotlinTeamcityDSL Config DSL Script</name>
  <groupId>KotlinTeamcityDSL</groupId>
  <artifactId>KotlinTeamcityDSL_dsl</artifactId>
  <version>1.0-SNAPSHOT</version>

  <parent>
    <groupId>org.jetbrains.teamcity</groupId>
    <artifactId>configs-dsl-kotlin-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <repositories>
    <repository>
      <id>jetbrains-all</id>
      <url>https://download.jetbrains.com/teamcity-repository</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
    <repository>
      <id>teamcity-server</id>
      <url>http://localhost:8111/app/dsl-plugins-repository</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>JetBrains</id>
      <url>https://download.jetbrains.com/teamcity-repository</url>
    </pluginRepository>
  </pluginRepositories>

  <build>
    <sourceDirectory>${basedir}</sourceDirectory>
    <plugins>
      <plugin>
        <artifactId>kotlin-maven-plugin</artifactId>
        <groupId>org.jetbrains.kotlin</groupId>
        <version>${kotlin.version}</version>

        <configuration/>
        <executions>
          <execution>
            <id>compile</id>
            <phase>process-sources</phase>
            <goals>
              <goal>compile</goal>
            </goals>
          </execution>
          <execution>
            <id>test-compile</id>
            <phase>process-test-sources</phase>
            <goals>
              <goal>test-compile</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.jetbrains.teamcity</groupId>
        <artifactId>teamcity-configs-maven-plugin</artifactId>
        <version>${teamcity.dsl.version}</version>
        <configuration>
          <format>kotlin</format>
          <dstDir>target/generated-configs</dstDir>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>org.jetbrains.teamcity</groupId>
      <artifactId>configs-dsl-kotlin</artifactId>
      <version>${teamcity.dsl.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.jetbrains.teamcity</groupId>
      <artifactId>configs-dsl-kotlin-plugins</artifactId>
      <version>1.0-SNAPSHOT</version>
      <type>pom</type>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.jetbrains.kotlin</groupId>
      <artifactId>kotlin-stdlib-jdk8</artifactId>
      <version>${kotlin.version}</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.jetbrains.kotlin</groupId>
      <artifactId>kotlin-script-runtime</artifactId>
      <version>${kotlin.version}</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

Не могли бы вы помочь мне, как мне правильно настроить это pom.xml конфигурацию для использования в Android Studio? Android В проекте Studio по умолчанию используется Gradle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...