2017-04-26 2 views
0

내 코드가 작동하는 것을 시작하도록하겠습니다. jar 파일을 실행하는 배치 파일을 클릭하면 GIT에서 일부 코드가 다운로드됩니다. 창에서JGit Clone Repo가 Windows에서 시작되었습니다. 작업 관리자가 실패했습니다.

Git gitRepo = Git.cloneRepository().setURI(remoteProjectPath) 
.setDirectory(new File(destination)) 
.setCredentialsProvider(new UsernamePasswordCredentialsProvider(repoUser, repoPassword)) 
.setBranch(branch) 
.setNoCheckout(true) 
.call(); 

, 내 사용자 프로필 폴더에 내가 포함 된 .gitconfig 파일이 있습니다

[http] 
sslverify = false 

내가 배치 파일을 더블 클릭, 그것을 작동합니다. 그러나 이것은 자동화 된 프로세스의 일부입니다. 자정에 배치 파일을 실행하기 위해 Windows 작업 스케줄러가 필요합니다. (시간은 중요하지 않다. 내가 직장에 없을 때다.) 하지만 작업 스케줄러를 열고 작업을 클릭하고 '실행'을 클릭하면 sslverify 플래그로 실패합니다.

은 "javax.net.ssl.SSLHandshakeException :에 의한 sun.security.validator.ValidatorException : PKIX 경로를 건물 실패 : sun.security.provider.certpath.SunCertPathBuilderException : 요청 대상에 유효한 인증 경로 찾을 수 없습니다"

.gitconfig는 (수동으로) 프로세스를 실행할 때만 사용됩니다. 작업 스케줄러에 의해 시작될 때 JGit이 다른 디렉토리에서 읽으려고하는지 파악하는 방법이 있습니까? 또는 CloneCommand를 사용하여 스파 스 체크 아웃을 위해 JGit에서 sslverify = false를 사용하도록하는 다른 방법이 있습니까?

감사합니다,

+0

JGit의 CloneCommand는 SSL 검증을 건너 뛸 수 없습니다. http://stackoverflow.com/questions/33998477/set-ssl-verification-off-for-jgit-clone-command –

답변

0

나는 오랫동안이 싸웠고, 나는이 질문을 게시 한 후 마지막으로 응답 단락을 찾을 수 있습니다. EGit에 대한 참고 문헌에서 나는 발견했다 : How to change "Location" for "User Settings"

그러나 그것은 나를 위해 일했다. 나는 시스템 환경 변수에 가서 시스템 변수 'HOME'을 만들고 필요한 .gitconfig 파일이 들어있는 디렉토리로 설정했다. 이제 Windows 작업 스케줄러에서 시작될 때도 프로세스가 작동합니다.

관련 문제