| Apache Ignite.NET Build Instructions (Windows) |
| ============================================== |
| |
| Requirements: |
| * Windows (XP and up), Windows Server (2008 and up) |
| * Oracle JDK 8 and above |
| * .NET Framework 4.0 |
| * .NET Core 2.0+ |
| * PowerShell 3.0+ |
| * Visual Studio 2010+ |
| * JAVA_HOME environment variable set to the corresponding JDK (x64 or x86) |
| * Apache Maven bin directory in PATH, or MAVEN_HOME environment variable |
| |
| Building binaries: |
| build.bat -skipCodeAnalysis |
| Resulting binaries will be in bin folder, and NuGet packages in nupkg folder. |
| |
| Running built binaries: resulting "bin" folder is self contained, you can copy it anywhere and run |
| bin\Apache.Ignite.exe |
| |
| Running examples and Apache.Ignite.exe from project directories: |
| Set IGNITE_NATIVE_TEST_CLASSPATH environment variable to "true" |
| |
| |
| Cross-Platform Support |
| ====================== |
| |
| Main Apache.Ignite.sln solution targets .NET 4.0 & VS 2010: we care for backwards compatibility. |
| |
| However, this does not prevent us from supporting .NET Standard 2.0 and .NET Core 2.0, |
| because of ".NET Framework compatibility mode", which allows referencing any libraries |
| from .NET Core 2.0 projects. So we release binaries which target .NET 4.0, and they work |
| both with .NET 4.0+ and .NET Core 2.0+. |
| |
| |
| Cross-Platform Development with .NET Core (Linux, macOS) |
| ======================================== |
| |
| Ignite.NET can be built, developed, and tested with .NET Core on Linux and macOS, but only partially. |
| A subset of functionality and tests is available. See Apache.Ignite.DotNetCore.sln. |
| |
| Requirements: |
| * .NET Core SDK (2.1+): https://www.microsoft.com/net/download/linux |
| * JDK 8+: apt install openjdk-8-jdk |
| * Maven: apt install maven |
| * IDE: Not required. Rider or VSCode works. |
| |
| Getting started: |
| * Build Java and .NET: |
| ./build.sh |
| * Run tests: |
| cd Apache.Ignite.Core.Tests |
| dotnet test Apache.Ignite.Core.Tests.DotNetCore.csproj |
| * Run specific test: |
| dotnet test Apache.Ignite.Core.Tests.DotNetCore.csproj --filter CacheTest |
| * IDE: Open Apache.Ignite.DotNetCore.sln |
| |
| |
| Cross-Platform Development with Mono (Linux, macOS) |
| ======================================== |
| |
| Full Ignite.NET solution can be built, developed, and tested with Mono. |
| |
| Requirements: |
| * Mono: http://www.mono-project.com/download/ (6.x may not work due to https://github.com/mono/mono/issues/18418) |
| * NuGet: apt install nuget |
| * JDK 8+: apt install openjdk-8-jdk |
| * Maven: apt install maven |
| * PowerShell Core: https://github.com/PowerShell/PowerShell |
| * IDE: Not required. |
| |
| Getting started: |
| * Build Java and .NET: |
| pwsh ./build.ps1 -skipDotNetCore |
| * Run tests: |
| mono Apache.Ignite.Core.Tests/bin/Debug/Apache.Ignite.Core.Tests.exe -basicTests |