小编jmr*_*ruc的帖子

Visual Studio Online预定构建无法找到我的分支

我在Visual Studio Online中创建了一个Build Definition,它指向BitBucket上托管的"External Git"存储库.详细信息在"存储库"选项卡下设置如下: 回购设置

当我手动排队构建时,使用"队列构建..."按钮,一切都按预期工作.我的日志如下:

2015-07-22T07:07:50.0285647Z Syncing repository: NxGN.OpenCast (Git)
2015-07-22T07:07:53.6355527Z Checking out origin/dev to C:\a\6268f160\NxGN.OpenCast
2015-07-22T07:07:53.9928992Z Checked out branch dev for repository NxGN.OpenCast at commit 9a658c94a1045df5656a654c780f5b7d1c2809f4
Run Code Online (Sandbox Code Playgroud)

我的问题是,对于预定的构建,配置如 预定构建 它失败并带有以下日志:

2015-07-22T07:20:24.0976453Z Syncing repository: NxGN.OpenCast (Git)
2015-07-22T07:20:26.6424255Z Checking out +origin/dev to C:\a\6268f160\NxGN.OpenCast
2015-07-22T07:20:26.6724252Z ##[error]No valid git object identified by '+origin/dev' exists in the repository.
Run Code Online (Sandbox Code Playgroud)

我试图指定分支为dev,origin/dev,refs/heads/dev,所有这些地方的+在生产日志中的分支名称的开头.

我究竟做错了什么?

git deployment continuous-integration automation visual-studio

11
推荐指数
1
解决办法
303
查看次数

Gradle Jetty插件锁定文件

有没有办法解决jetty完全由gradle?引起的文件锁定问题?

一些说明:
当使用Gradle Jetty插件时,通过运行gradle jettyRun,jetty会导致在使用Windows时锁定静态资源文件(html,css,js等).您可以在Windows上锁定的文件中看到问题的描述.

同一篇文章还介绍了如何解决这个问题.基本上你必须要么:

  1. 禁用文件映射缓冲区
  2. 根本不使用NIO.

这两件事都需要在项目中添加一些特定于码头的配置文件,我不想这样做 - jetty插件仅用于方便,并且维护配置感觉不对.

我不需要NIO在本地机器上进行测试,因此任何解决方案都可以.

编辑:

现在,我在挑你设置的选项useFileMappedBufferfalse.这是怎么做的:

  1. 指定您webdefault.xml喜欢的路径

    [jettyRun, jettyRunWar,jettyStop]*.with {
        //other configs
    
        webDefaultXml = file("${project.webAppDir}/WEB-INF/jetty-webdefault.xml")
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 从最新的6.1.x jetty发行版中获取文件.该插件似乎只支持jetty 6.你可以将它本地化jetty-6.1.26\etc\webdefault.xml.显然,您必须将它放在上一步指定的路径上.

  3. 将默认的servlet init参数更改useFileMappedBufferfalse

我将研究使用嵌入式插件的选项.

jetty gradle

8
推荐指数
1
解决办法
1774
查看次数

Servlet.service()抛出ClassCastException

我有一个java Web应用程序.我已经设置了这个新项目并在运行jsp时遇到以下异常,

Oct 10, 2012 3:01:49 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor
    at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:151)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
Oct 10, 2012 3:01:57 AM org.apache.catalina.loader.WebappClassLoader modified
INFO:     Additional JARs have been added : 'activation-1.1.jar'
Oct 10, 2012 3:01:57 AM org.apache.catalina.core.StandardContext reload
INFO: …
Run Code Online (Sandbox Code Playgroud)

java servlets jdk1.6 classcastexception tomcat6

8
推荐指数
1
解决办法
1万
查看次数

在java中缓存方法的结果

我有这种方法从数据库加载大量数据

private List<Something> loadFromDb() {
    //some loading which can take a lot of time
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种简单的方法来缓存一些固定时间的结果(例如2分钟).我不需要拦截方法调用本身,只是为了缓存返回的数据 - 如果需要,我可以编写另一个执行缓存的方法.

我不想:

  • 这样使用AOP编译时编织- 它需要在构建中进行更改
  • @Cacheable在Spring中使用- 我必须为每个可缓存方法定义一个缓存

是否有可以简化此任务的库,还是应该执行其他操作?这种库的示例使用将是

private List<Something> loadFromDbCached() {
    //in java 8 'this::loadFromDb' would be possible instead of a String
    return SimpleCaching.cache(this, "loadFromDb", 2, MINUTES).call();
}
Run Code Online (Sandbox Code Playgroud)

编辑: 我正在寻找一个这样做的库,管理缓存比看起来更麻烦,特别是如果你有并发访问

java caching

3
推荐指数
2
解决办法
1万
查看次数