Log4net provides support for the following targets
- net462
- netstandard2.0
TL;DR (Windows):
- install Visual Studio Build Tools (at least VS2019)
- install nodejs (at least v16)
- install dotnet (v8+) and the .NET SDK (current latest)
- in the project folder:
npm i
npm run build
TL;DR (Docker):
- install docker (if you haven't already)
- in logging/log4net run
docker build -t log4net-builder .
docker run -it log4net-builder
- this will
- install all dependencies in the container
- build src/log4net.sln
- this will
- inside the container run
dotnet test /logging-log4net/src/log4net.sln
TL;DR (!Windows):
- install the dotnet SDK - v8 or better
- install Mono (you're going to need it to target certain versions of .NET)
- install nodejs 16+
- in the project folder:
npm i
export DOTNET_CORE=1 npm run build
- we force using
dotnet
on non-windows targets for now. At some point, this should become automatic
- we force using
Options:
- build locally. Suggested environment:
- Pre-requisites:
- Visual Studio 2019 Build Tools
- include desktop targets at least
- include dotnet core targets or download and install the latest dotnet sdk (you will need at least v8)
- Visual Studio 2019 Build Tools
- Binaries can be built with a Visual Studio or Rider installation
- Binaries, packages and a release zip can be built via commandline
- Ensure that you have a reasonably modern NodeJS installed (at least version 8+)
npm ci
npm run build
- optionally
npm test
to run all tests - optionally
npm run release
to generate release artifacts
- Ensure that you have a reasonably modern NodeJS installed (at least version 8+)
- Pre-requisites:
- build locally (CLI edition)
- install nodejs (at least v16)
npm i
npm run build
- build via docker for windows, using the
build-with-docker-for-windows.bat
script - build via the vs2019 Windows AppVeyor image. There is an appveyor.yml file included which (should) build if you set up AppVeyer to track your fork. AppVeyer is free for open-source projects. (TODO: should have a link to the official AppVeyor build)
Log4Net uses Maven to build the site. Source artifacts can be found under src/site
.
Building the site can be accomplished with npm run build-site
. You should have maven
installed:
- Windows: get it from Scoop
- OSX: get it from Homebrew
- Linux: use your package manager
The site will be generated in target/site
, and can be viewed locally. Updates should
be pushed to the asf-staging
branch of https://github.com/apache/logging-log4net-site
Once the site has been pushed to the asf-staging
branch, it can be viewed at
http://logging.staged.apache.org/log4net