首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >排除使用fmpp处理文件夹(但要复制文件夹)

排除使用fmpp处理文件夹(但要复制文件夹)
EN

Stack Overflow用户
提问于 2019-02-01 20:08:11
回答 2查看 61关注 0票数 0

我正在使用FMPP来构建我的网站,最近遇到了一个问题。当尝试构建我的项目(用gradle)时,它会在PHPMailer中读取一个文件。是否有一种方法可以忽略使用FMPP处理该文件夹,但仍然将其复制到我的构建目录中?我知道我可以将ignoredir.fmpp文件添加到那个文件夹中,但是它会完全忽略它的复制,而我不能这样做。下面是我的代码片段

代码语言:javascript
复制
task build_website {
    group 'csWebsite'
    description 'Task for compiling the website implementing the fmpp templates'
    dependsOn gzipCss
    finalizedBy minifyJs
    ant.taskdef(name: 'fmpp', classname:'fmpp.tools.AntTask') {
        classpath {
            fileset(dir: 'lib', includes: '*.jar')
        }
    }
    doLast {
        ant.fmpp(sourceRoot: "src", outputRoot :"build") {
            data(expandProperties: 'yes',
            """
            base_url: $project.base_url
            google_analytics_number : $project.google_analytics_number
            mail_user : $project.mail_user
            mail_password : $project.mail_password
            mail_recipient : $project.mail_recipient
            upload_folder : $project.upload_folder
            host : $project.host
            port : $project.port
            """
            )
        }        
    }
}
EN

回答 2

Stack Overflow用户

发布于 2019-02-03 19:30:19

您可以为该目录中的所有文件设置copy处理模式,并将其他文件保留在默认处理模式下,如:modes: [ copy(/scripts/vendor/) ]。注意路径末尾的/;这很重要。也请参阅文档:http://fmpp.sourceforge.net/settings.html#processingMode

票数 1
EN

Stack Overflow用户

发布于 2019-02-01 20:18:22

其实我真的很想这个问题,退了一步后,找到了一个简单的解决办法。下面的更新代码运行良好

代码语言:javascript
复制
task build_website {
    group 'csWebsite'
    description 'Task for compiling the website implementing the fmpp templates'
    dependsOn gzipCss
    finalizedBy minifyJs
    ant.taskdef(name: 'fmpp', classname:'fmpp.tools.AntTask') {
        classpath {
            fileset(dir: 'lib', includes: '*.jar')
        }
    }
    doLast {
        ant.fmpp(sourceRoot: "src", outputRoot :"build", excludes: "**/vendor/**") {
            data(expandProperties: 'yes',
            """
            base_url: $project.base_url
            google_analytics_number : $project.google_analytics_number
            mail_user : $project.mail_user
            mail_password : $project.mail_password
            mail_recipient : $project.mail_recipient
            upload_folder : $project.upload_folder
            host : $project.host
            port : $project.port
            """
            )
        }  
        copy{
            from "${projectDir}/src/scripts/vendor"
            into "${buildDir}/scripts/vendor"
        }
    }
}

简单地忽略FMPP处理的文件夹,然后在FMPP完成后发出gradle副本就足够简单了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54486521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档