Android Studio无法创建新项目

Android Studio无法创建新项目

问题描述:

我将Android Studio更新到2.2.1,但是我创建了一个新项目,并获得RuntimeException.

I update Android studio to 2.2.1 but I create a new project I get the RuntimeException.

java.lang.RuntimeException:
com.android.tools.idea.templates.FreemarkerUtils$TemplateProcessingException:
freemarker.core.ParseException: Parsing error in template
"root://gradle-projects/NewAndroidModule/recipe.xml.ftl" in line 6,
column 2:Unknown directive: #ifues. Help (latest version):
http://freemarker.org/docs/ref_directive_alphaidx.html; you're using
FreeMarker 2.3.20.

由于某种原因,您的模板文件在安装过程中已损坏.

For some reason, your template file is broken during installation.

让我附上我的文件,如下所示.要申请,请执行以下操作.

Let me attach my file as below. To apply, please do as follows.

  1. 关闭Android Studio.
  2. 使用文本编辑器(即Notepad ++)在C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidModule目录中打开recipe.xml.ftl文件
  3. 复制并粘贴以下代码,然后保存. (UTF-8格式)
  4. 重新运行Android Studio.
  1. Close Android Studio.
  2. Open your recipe.xml.ftl file at C:\Program Files\Android\Android Studio\plugins\android\lib\templates\gradle-projects\NewAndroidModule directory with text editor (ie, Notepad++)
  3. Copy-and-Paste below code, then Save. (UTF-8 format)
  4. Rerun Android Studio.

请注意,该文件来自Android Studio版本 2.2.1

Note that the file is from Android Studio version 2.2.1

<?xml version="1.0"?>
<recipe>

<#if backwardsCompatibility!true>
    <dependency mavenUrl="com.android.support:appcompat-v7:${buildApi}.+"/>
</#if>

<#if unitTestsSupported>
    <dependency mavenUrl="junit:junit:4.12" gradleConfiguration="testCompile" />
</#if>

<#if !createActivity>
    <mkdir at="${escapeXmlAttribute(srcOut)}" />
</#if>

    <mkdir at="${escapeXmlAttribute(projectOut)}/libs" />

    <merge from="root/settings.gradle.ftl"
             to="${escapeXmlAttribute(topOut)}/settings.gradle" />
    <instantiate from="root/build.gradle.ftl"
                   to="${escapeXmlAttribute(projectOut)}/build.gradle" />
    <instantiate from="root/AndroidManifest.xml.ftl"
                   to="${escapeXmlAttribute(manifestOut)}/AndroidManifest.xml" />

<mkdir at="${escapeXmlAttribute(resOut)}/drawable" />
<#if copyIcons && !isLibraryProject>
    <copy from="root/res/mipmap-hdpi"
            to="${escapeXmlAttribute(resOut)}/mipmap-hdpi" />
    <copy from="root/res/mipmap-mdpi"
            to="${escapeXmlAttribute(resOut)}/mipmap-mdpi" />
    <copy from="root/res/mipmap-xhdpi"
            to="${escapeXmlAttribute(resOut)}/mipmap-xhdpi" />
    <copy from="root/res/mipmap-xxhdpi"
            to="${escapeXmlAttribute(resOut)}/mipmap-xxhdpi" />
    <copy from="root/res/mipmap-xxxhdpi"
            to="${escapeXmlAttribute(resOut)}/mipmap-xxxhdpi" />
</#if>
<#if makeIgnore>
    <copy from="root/module_ignore"
            to="${escapeXmlAttribute(projectOut)}/.gitignore" />
</#if>
<#if enableProGuard>
    <instantiate from="root/proguard-rules.txt.ftl"
                   to="${escapeXmlAttribute(projectOut)}/proguard-rules.pro" />
</#if>
<#if !(isLibraryProject??) || !isLibraryProject>
    <instantiate from="root/res/values/styles.xml.ftl"
                   to="${escapeXmlAttribute(resOut)}/values/styles.xml" />
<#if buildApi gte 22>
    <copy from="root/res/values/colors.xml"
          to="${escapeXmlAttribute(resOut)}/values/colors.xml" />
</#if>
</#if>

    <instantiate from="root/res/values/strings.xml.ftl"
                   to="${escapeXmlAttribute(resOut)}/values/strings.xml" />

    <instantiate from="root/test/app_package/ExampleInstrumentedTest.java.ftl"
                   to="${escapeXmlAttribute(testOut)}/ExampleInstrumentedTest.java" />

<#if unitTestsSupported>
    <instantiate from="root/test/app_package/ExampleUnitTest.java.ftl"
                   to="${escapeXmlAttribute(unitTestOut)}/ExampleUnitTest.java" />
</#if>
<#if includeCppSupport!false>
    <instantiate from="root/CMakeLists.txt.ftl"
                   to="${escapeXmlAttribute(projectOut)}/CMakeLists.txt" />

    <mkdir at="${nativeSrcOut}" />
    <instantiate from="root/native-lib.cpp.ftl" to="${nativeSrcOut}/native-lib.cpp" />
</#if>

</recipe>