Geeksltd / Olive

Olive framework, for more productive cross platform .NET solutions. It's available under the GPL v3 license. See License.md for more information.
https://geeksltd.github.io/Olive
Other
44 stars 44 forks source link

Solution doesn't build #290

Closed mz-andrewpotts closed 3 years ago

mz-andrewpotts commented 3 years ago

Steps to recreate, on a new machine:

git clone https://github.com/Geeksltd/Olive.git
cd Olive
BuildAll.bat

Then go into Visual Studio and compile the solution. The build process errors with:

BuildAll.bat

dotnet build Olive.Security.Aws
Microsoft (R) Build Engine version 16.7.0+7fb82e5b2 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.

  Determining projects to restore...
  Restored C:\Source\Olive-Geeks\Olive\Olive.Security.Aws\Olive.Security.Aws.csproj (in 1.42 sec).
  Restored C:\Source\Olive-Geeks\Olive\Olive.Security\Olive.Mvc.Security.csproj (in 1.42 sec).
  2 of 4 projects are up-to-date for restore.
  Olive -> C:\Source\Olive-Geeks\Olive\bin\netstandard2.0\Olive.dll
C:\Program Files\dotnet\sdk\3.1.402\Microsoft.Common.CurrentVersion.targets(2084,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Olive.ApiClient". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]
Extensions\ApiClient.cs(11,49): error CS0246: The type or namespace name 'ApiClient' could not be found (are you missing a using directive or an assembly reference?) [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]
Extensions\ApiClient.cs(11,23): error CS0246: The type or namespace name 'ApiClient' could not be found (are you missing a using directive or an assembly reference?) [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]

Build FAILED.

C:\Program Files\dotnet\sdk\3.1.402\Microsoft.Common.CurrentVersion.targets(2084,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Olive.ApiClient". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]
Extensions\ApiClient.cs(11,49): error CS0246: The type or namespace name 'ApiClient' could not be found (are you missing a using directive or an assembly reference?) [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]
Extensions\ApiClient.cs(11,23): error CS0246: The type or namespace name 'ApiClient' could not be found (are you missing a using directive or an assembly reference?) [C:\Source\Olive-Geeks\Olive\Olive.Web\Olive.Web.csproj]
    1 Warning(s)
    2 Error(s)

Time Elapsed 00:00:16.79
mz-andrewpotts commented 3 years ago

If we look at Olive.Aws.csproj for example, it contains a path reference to an invalid path:

<ItemGroup>
    <Reference Include="Olive">
      <HintPath>..\bin\netstandard2.0\Olive.dll</HintPath>
    </Reference>
  </ItemGroup>

Should this be a project reference rather than an assembly reference with a relative path?

mz-andrewpotts commented 3 years ago

As another example, in project Olive.Entities.Cache.Redis the class RedisCacheProvider implements the interface ICacheProvider, but is missing the method AddList(Type type, IEnumerable list);. Instead it provides a similar method but with a different signature: public void AddList(Type type, string key, IEnumerable list)

stale[bot] commented 3 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.