【问题标题】:Play Framework: Add a dependency that points to a directory of local jar filesPlay Framework:添加一个指向本地jar文件目录的依赖项
【发布时间】:2011-12-22 06:21:34
【问题描述】:

是否可以将依赖项添加到指向目录的dependencies.yml?

例如,对dependencies.yml使用伪yml,我想做这样的事情:

require:
    - mycooldirectory

repositories:
    - mycooldirectory:
        type: local
        artifact: "${application.path}/jars/mycooldirectory/*.jar"
        contains: 
            - mycooldirectory -> *

在我的 make-believe-world 中,上面会将 mycooldirectory 作为类路径文件夹包含在内,并使用在该目录中找到的任何 jar。

我只是在编造一些东西,但我希望这能解释我想要做什么。我知道您可以将 jar 放在 /lib 目录中,但是在执行 play dependencies --sync 时,dependencies.yml 未指定的任何 jar 都会被擦除。我也知道你可以通过this 指定单个罐子。但是,我只是想知道您是否可以做类似的事情但引用一个完整的 jar 目录?

编辑:我有一种解决方法,即为 mycooldirectory 创建一个 Play 模块结构(即在该目录下有一个 lib 目录)并将所有 jar 放在该 lib 目录中。然后在 dependencies.yml 中,这样做:

require:
    - mycooldirectory -> mycooldirectory

repositories:
   - provided:    
       type:       local
       artifact:   "${application.path}/jars/[module]"
       contains:  
         - mycooldirectory

虽然我想知道是否有一种更简洁的方法可以做到这一点,而无需制作一个假装模块,只需引用一个新目录即可拥有额外的 jar。

【问题讨论】:

    标签: java dependencies playframework


    【解决方案1】:

    此解决方法与您的类似,但它应该可以在没有 /lib 目录的情况下工作。我还没有测试它,但它在邮件列表中并在那里得到了积极的反馈。

    require:
      - play
      - play -> googleclosure 1.2
      - provided -> mylib 1.0
    
    repositories:
      - provided:
          type:       local
          artifact:   "${application.path}/jar/[module]-[revision].jar"
          contains:
            - provided -> *
    

    邮件列表线程:https://groups.google.com/forum/#!topic/play-framework/tU5OJa5JFhs/discussion

    【讨论】:

    • 是的,我已经看到了,但据我所知,它一次只指一个罐子(而不是一个装满罐子的目录)。如果我错了,请纠正我,但上面不是说“我想将“jar”目录中的 jar mylib-1.0.jar 包含为依赖项吗?”而我想说“从一些目录,而不必一一指定jar”
    • 你是对的。 - provided -> mylib 1.0 只添加了一个 jar,但您可以更频繁地使用该行,但我想这不是您想要的。您是否尝试过类似- provided -> * * 的方法。否则,请尝试将您的问题发布到邮件列表。
    • 也许很明显,但我想指出provided 可以是您想要的任何名称(例如,您的组织名称)。此外,如果您有“1.0-SNAPSHOT”版本或其他版本,请不要在require 部分中添加“-SNAPSHOT”部分,否则 Play 会抱怨。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多