【问题标题】:Best practice for opening folders in Maven在 Maven 中打开文件夹的最佳实践
【发布时间】:2013-05-04 16:31:17
【问题描述】:

在 Maven 中打开文件最好这样做:

Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties");

或者这个:

InputStream in = getClass().getResourceAsStream("db.properties");

如何在 Maven 中打开一个文件夹以及如何遍历它?

【问题讨论】:

标签: maven directory


【解决方案1】:

我假设“在 Maven 中”是指“在编写 Maven 插件时”。

将文件路径作为可配置参数通常是有意义的:

@Mojo(name = "mygoal", defaultPhase = LifecyclePhase.PREPARE_PACKAGE)
public class MyPlugin extends AbstractMojo {
    @Parameter(defaultValue="${basedir}/src/main/resources/db.properties")
    public File dbcfg;

    @Override
    public void execute() throws MojoExecutionException, MojoFailureException {
        Properties cfg = new Properties();
        FileReader cfgReader = new FileReader(dbcfg);
        try {
            cfg.load(cfgReader);
        }finally{
            IOUtils.closeQuietly(cfgReader); 
        }
        /* .... */
    }

}

请注意,您可以在默认值中使用 maven 表达式。

【讨论】:

    猜你喜欢
    • 2013-02-21
    • 1970-01-01
    • 2013-11-18
    • 2012-12-15
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多