Looking for gradle Answers? Try Ask4KnowledgeBase
Looking for gradle Keywords? Try Ask4Keywords

gradleIntelliJ IDEAタスクのカスタマイズ


構文

  • groovy.util.Node = node.find {childNode - > trueを返す|| false}
  • node.append(nodeYouWantAsAChild)
  • groovy.util.Node parsedNode =(新しいXmlParser())。parseText(someRawXMLString)
  • '' 'マルチライン文字列(補間されない)' ''

備考

IntelliJプロジェクトの3つの基本ファイル(ipr、iws、およびimlファイル)には、アイデアタスクのgradleでアクセスすることができます。

project.ipr
module.iml
workspace.iws

.withXmlを使用すると、xmlにアクセスできます。 .asNode()を使用すると、Groovy XMLノードになります。

例:

project.ipr.withXml { provider ->
    def node = provider.asNode()

そこからかなり簡単です - あなたのためにIntelliJプロジェクトを構成するためにgradleを変更し、開始時にファイルを取り出し、(IntelliJ内で)gradleを実行したいアクションを実行し、古いファイルで新しいファイルを比較します。アイデアジョブをカスタマイズするために必要なXMLが表示されます。また、XMLのどこに位置しているのかをメモする必要があります。

考慮すべき点のもう1つは、グラデーションのアイデアを複数回実行すると、IntelliJファイル内にノードが重複しないようにすることです。したがって、作成するノードを検索したい場合は、そのノードを作成して挿入することができます。

落とし穴:

場合によっては、findメソッドの文字列比較に==を使用すると失敗します。テストすると私はそれが事実であるとわかります、私は.containsを使用します。

ノードを検索するときは、条件として使用している属性がすべてのノードにあるわけではありませんので、必ずnullを確認してください。

IntelliJ IDEAタスクのカスタマイズ 関連する例