2016-07-04 11 views
3

私は.Net Coreに取り組んでおり、> net 4.5アプリケーションを.Netコアに移行しようとしています。.Net Core VS2015、DLL 'git2-785d8c4'を読み込めません:指定されたモジュールが見つかりませんでした。 (HRESULTからの例外:0x8007007E)

次の.dllのgitにアクセスしようとすると、このプロセスの間に、私は次のエラーを見つけていますことは、私のProject.jsonです:

"frameworks": { 
    "net451": { 
     "dependencies": { 
     "Data": "1.0.0-*", 
     "NLog": "4.3.5", 
     "HtmlAgilityPack": "1.4.9", 
     "LibGit2Sharp": "0.22.0", 
     "RestSharp": "105.2.3", 
     "Unofficial.Ionic.Zip": "1.9.1.8" 
     } 
    } 

と、ここで私は、コードの以下の行に受信して、エラーが発生しました。

if (Repository.IsValid(basePath) == false) 

ネームスペースが含まれています

using LibGit2Sharp; 
using LibGit2Sharp.Handlers; 

エラーメッセージがある:

DLL 'git2-785d8c4' をロードできません:指定されたモジュールが見つかりませんでした。 (HRESULTからの例外:0x8007007E)

私は、この機能を.Net Coreで使用できる他の方法があるかどうかを知りたいと思っています。

+0

[fuslogvw](https://msdn.microsoft.com/en-us/library/e74a18c4(v = vs.110).aspx)を実行して、dllの検索場所を調べることができます。 –

答えて

2

更新: LibGit2Sharp(LibGit2Sharp 0.23.0-pre20160803182831)の8月3日のビルドに始まり、LibGit2Sharpは現在、通常の.NET 4.5のプロジェクト(.csprojベースのソリューションを使用したもの)とで導入された新しいスタイルのproject.jsonベースのソリューション(のようなの両方をサポートしています。 NETコア)。

なお、LibGit2Sharpは.NET Coreをサポートしておらず、新しいプロジェクト構造のみをサポートしています。更新についてはhttps://github.com/libgit2/libgit2sharp/pull/1318をご覧ください。

+1

彼は 'net451'をターゲットにしています – Pawel

+0

@Pawel:" .Net Coreに取り組んでおり、> net 4.5アプリケーションを.Netコアに移行しようとしています...どうしましたか? –

+0

@Pawel:私はnet451をターゲットにしていますが、.netコアをターゲットにしています。私のプロジェクトには、dllやbinフォルダは含まれていません。これらの制限で、私はLibGit2Sharpを使用する必要があります。 –

1

LibGit2Sharpパッケージは、LibGit2Sharp.NativeBinariesパッケージによって異なります。これはnative packageなので、MSBuildファイルを使用してネイティブライブラリを出力ディレクトリにコピーします。

.Net Core CLIはMSBuildを使用していないため、その結果、MSBuildベースのネイティブパッケージはサポートされていません。

.Net Core CLIでLibGit2Sharpパッケージを使用する場合は、待つ必要があります.Net Core CLI(2016年秋予定)の次期バージョンではMSBuildが使用されるため、働き始める。また、LibGit2Sharpの著者は、今後互換性のあるパッケージをリリースするかもしれません。

+0

.NETコアにネイティブの依存関係を持つパッケージを使用できます。彼らは特定の構造に従う必要がありますが、あなたがアプリを公開するときにどのビットをコピーするかを知っていれば必要です。私はしばらく前に投稿を書いた:https://blog.3d-logic.com/2015/11/10/using-native-libraries-in-asp-net-5/。これはdnxについて話していますが、dllの読み込みは少し違っていますが、ネイティブの依存関係を持つパッケージの構造は同じです。また、唯一の問題である場合は、postpublish/postcompileスクリプトを使用してネイティブ依存関係をコピーすることもできます。 – Pawel

関連する問題