2013-06-03 78 views
0

我正在使用JENKINS來配置項目的構建過程。JENKINS顛覆URL修剪

從JENKINS GUI配置項目時,我嘗試輸入我的存儲庫的URL。

https://abc.xyz.def.rst.com/jkl/bnm/branches/myApp/

我得到異常如下。

注:

  1. 詹金斯已經被部署在UNIX機器上。
  2. 從WINDOWS訪問JENKINS GUI:
  3. 可以使用來自UNIX機器的SVN命令訪問存儲庫。

    FAILED: org.tmatesoft.svn.core.SVNErrorMessage: svn: OPTIONS /jkl/bnm/branches/myApp/ failed 
    
    
    org.tmatesoft.svn.core.SVNException: svn: OPTIONS /jkl/bnm/branches/myApp/ failed 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:291) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:276) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:264) 
        at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:516) 
        at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:98) 
        at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1001) 
        at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:97) 
        at hudson.scm.SubversionSCM$DescriptorImpl.postCredential(SubversionSCM.java:1790) 
        at hudson.scm.SubversionSCM$DescriptorImpl.doPostCredential(SubversionSCM.java:1735) 
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
        at java.lang.reflect.Method.invoke(Method.java:585) 
        at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:282) 
        at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:149) 
        at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:88) 
        at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:104) 
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) 
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:561) 
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:646) 
        at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:234) 
        at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) 
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:561) 
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:646) 
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:477) 
        at org.kohsuke.stapler.Stapler.service(Stapler.java:159) 
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) 
        at winstone.ServletConfiguration.execute(ServletConfiguration.java:249) 
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:335) 
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378) 
        at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95) 
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87) 
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) 
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) 
        at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47) 
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) 
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) 
        at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) 
        at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) 
        at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) 
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) 
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) 
        at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) 
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:195) 
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368) 
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) 
        at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244) 
        at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) 
        at java.lang.Thread.run(Thread.java:595) 
    Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: OPTIONS /jkl/bnm/branches/myApp/ failed 
        at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:200) 
        at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:146) 
        at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:89) 
        ... 49 more 
    Caused by: org.tmatesoft.svn.core.SVNException: svn: OPTIONS request failed on '/jkl/bnm/branches/myApp/' 
    svn: timed out waiting for server 
        at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:64) 
        at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.error(SVNErrorManager.java:51) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:644) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:285) 
        ... 48 more 
    Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: OPTIONS request failed on '/jkl/bnm/branches/myApp/' 
        at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:200) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:642) 
        ... 49 more 
    Caused by: org.tmatesoft.svn.core.SVNErrorMessage: svn: timed out waiting for server 
        at org.tmatesoft.svn.core.SVNErrorMessage.create(SVNErrorMessage.java:200) 
        at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection._request(HTTPConnection.java:394) 
        ... 49 more 
    Caused by: java.net.SocketTimeoutException: connect timed out 
        at java.net.PlainSocketImpl.socketConnect(Native Method) 
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) 
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) 
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) 
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) 
        at java.net.Socket.connect(Socket.java:520) 
        at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:545) 
        at org.tmatesoft.svn.core.internal.util.SVNSocketConnection.run(SVNSocketConnection.java:57) 
        ... 1 more 
    

    正如你所看到的URL已被剪輯,這就是爲什麼Jenkins無法連接到回購。

    請幫忙。

+0

'.com'後面有一個小小的隱藏空間嗎? –

+0

沒有。在任何地方都沒有空間。 – BobadKanda

+1

對不起。這是一個愚蠢的問題。這一個更好。你是否證實你可以在Jenkins用戶登錄時從Jenkins機器訪問SVN?我認爲SVN OPTIONS是一個讀取請求。 –

回答

0

確實SVN OPTIONS是一個閱讀,但你的問題可能是別的。

檢查svn服務器上的網絡服務器日誌 - 因爲你使用的是https我確定svn被配置爲可以運行一個web服務器(apache或nginx),我想這就是Apache。 :)

您可以在這些日誌中找到更多信息。

然後在svn上檢查jenkins用戶的權限 - 對於SVN服務器,Jenkins看起來像任何其他用戶,並且如果沒有讀權限,您將無法連接。

由於JAVA包以org.tmatesoft.svn.開頭,這意味着您在服務器上使用svnKit連接到SVN服務器。檢查Jenkins如何處理此連接接口 - 支持可能不完整。 JavaHL是另一種選擇。