2017-02-23 9 views
1

FreeMarkerで既存のファイルを変更したいと思います。上記のコードで例の場合 、FreeMarkerは既存のファイルを変更します

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    package="$(package_name)"> 
    $(activities) 
    <activity android:name=".map.activity.MapsDemoActivity" /> 
    <activity android:name=".map.activity.MapListActivity" /> 
    <activity android:name=".map.activity.EventsDemoActivity" /> 
    <activity android:name=".map.activity.InfoWindowDemoActivity" /> 
    <activity android:name=".map.activity.CustomMarkerClusteringDemoActivity" /> 
</manifest> 

は、私は$(パッケージ名)と$(活動を)更新したいです。

私はorg.freemarker:freemarker:2.3.23を使用しています。このファイルをJavaプログラムを使用して変更する必要があります。

私はフリーメーカーを使用して新しいファイルを作成する方法を知っていますが、Javaプログラムを使用して既存のファイルを変更することはできません。

解決策をご提案ください。 recipe.xmlで

+0

は理解していない挿入する要素を指定します'.ftl'テンプレートファイルをJavaプログラムで更新したいですか?テキストなので、ファイルを開いたり、行を読み込んだり、置き換えたいテキストを探したりします。 – fustaki

+0

いいえ、そうではありません。私は例を挙げて説明しましょう 私は既存のFile-1.javaを持っていて、その中にいくつかのコードを追加したいのです。したがって、File-2.java.ftlをプレースホルダとともに作成します。 今File-2.java.ftlの内容をFile-1.javaにマージしたいと思います。 同様のコードマージはAndroid Studioで行われます。新しいアクティビティを作成すると、activity.java、layout.xmlが追加され、その値がstrings.xmlとmanifest.xmlにマージされます。 これが明確になることを願っています! – Swapnil

答えて

0

使用mergeコマンドは、rootで

<merge from="root/src/AndroidManifest.xml.ftl"  
to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" /> 

/SRC/AndroidManifest.xml.ftl あなただけのあなた..あなたが

関連する問題