2017-04-26 7 views
0

jarファイルを実行するバッチファイルをクリックすると、GITからコードがダウンロードされます。 Windowsで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タスクスケジューラから起動された場合でもプロセスは動作します。

関連する問題