2016-12-14 22 views
3

私のdotnet publishコマンドは、公開手順を実行する前に事前公開が完了するのを待っていません。結果には公開されたコンテンツがありません。公開開始前にdotnet publishが実行されます

私のシナリオでは、事前公開はwebpackを実行してwwwrootを生成します。しかし、公開が完了してwwwrootが足りなくなる前に発行されます。私がagaingを公開すると、wwwrootが存在するため、正しく公開されます。

ここでは誰もが他にこれを見

"publishOptions": { 
    "include": [ 
     "appsettings.json", 
     "Views", 
     "web.config", 
     "wwwroot", 
     "AppStore/dist" 
    ], 
    "exclude": [ 
     "wwwroot/dist/*.map" 
    ] 
    }, 


    "scripts": { 
     "prepublish": [ 
     "npm install", 
     "node node_modules/webpack/bin/webpack.js --config webpack.config.vendor.js --env.prod", 
     "node node_modules/webpack/bin/webpack.js --env.prod" 
     ], 
    }, 

関連project.jsonセクションがありますか? Dotnet Core 1.0.0-preview2-1-003177

+1

今、この権利を見て、あなたは解決策を見つけましたか? – Max

答えて

0

私はあなたのふるまいを説明しているdotnet/cliのthis問題を発見しました。

この変更は、すでに提供されています:

<Target Name="PrepublishScript" AfterTargets="ComputeFilesToPublish"> 
    <!-- Exclude old script and font files from publish output--> 
    <ItemGroup> 
     <PrevScriptFiles Include="wwwroot\**" /> 
     <ResolvedFileToPublish Remove="@(PrevScriptFiles->'%(FullPath)')" /> 
    </ItemGroup> 

    <Exec Command="npm install" /> 
    <Exec Command="node node_modules/webpack/bin/webpack.js --config webpack.config.vendor.js --env.prod" /> 
    <Exec Command="node node_modules/webpack/bin/webpack.js --env.prod" /> 

    <!-- Include the newly-built files in the publish output --> 
    <ItemGroup> 
     <DistFiles Include="wwwroot\**" /> 
     <ResolvedFileToPublish Include="@(DistFiles->'%(FullPath)')" Exclude="@(ResolvedFileToPublish)"> 
      <RelativePath>%(DistFiles.Identity)</RelativePath> 
      <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> 
     </ResolvedFileToPublish> 
    </ItemGroup> 
</Target> 

最新のコメントは、これは長い時間のために必要されていないことを示しています。また、周りの仕事を説明しASPNET/websdkリポジトリ内follow upがあります最新のCLI(そしてこれからのVSリリースで利用できるはずです)。

しかしとにかく、ちょうど回避策を投稿したかった...

関連する問題