Repository: reef Updated Branches: refs/heads/master 0d803909a -> f236c7a81
[REEF-1739] Update the build instructions * Made `lang/cs/Build.md` self-contained. * Minor edits to `lang/java/Build.md` JIRA: [REEF-1739](https://issues.apache.org/jira/browse/REEF-1739) Pull Request: This closes #1253 Project: http://git-wip-us.apache.org/repos/asf/reef/repo Commit: http://git-wip-us.apache.org/repos/asf/reef/commit/f236c7a8 Tree: http://git-wip-us.apache.org/repos/asf/reef/tree/f236c7a8 Diff: http://git-wip-us.apache.org/repos/asf/reef/diff/f236c7a8 Branch: refs/heads/master Commit: f236c7a818feaa97fb5a911e3909406022983939 Parents: 0d80390 Author: Saikat Kanjilal <[email protected]> Authored: Fri Feb 10 23:19:42 2017 +0000 Committer: Markus Weimer <[email protected]> Committed: Thu Feb 16 15:51:38 2017 -0800 ---------------------------------------------------------------------- lang/cs/BUILD.md | 52 +++++++++++++++++-------------------------------- lang/java/BUILD.md | 11 ++++++++++- 2 files changed, 28 insertions(+), 35 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/reef/blob/f236c7a8/lang/cs/BUILD.md ---------------------------------------------------------------------- diff --git a/lang/cs/BUILD.md b/lang/cs/BUILD.md index 249444d..4700f2b 100644 --- a/lang/cs/BUILD.md +++ b/lang/cs/BUILD.md @@ -18,15 +18,25 @@ under the License. --> Building and Testing REEF .NET -================== +============================== Prerequisites ------------- - * Windows OS. - * [Building REEF Java](../java/BUILD.md). - * [Visual Studio](http://www.visualstudio.com) 2015 (preferred) or 2013. Most REEF developers use the free Community Edition. - * NuGet 2.8.6 or later. + * Windows OS including Windows 8,10,Server 2012 and Server 2016. + * Same prerequisites as REEF Java ([Building REEF Java](../java/BUILD.md)), which includes: + * [Apache Maven](https://maven.apache.org/download.cgi) 3.3 or newer + * Java development kit version 7 or 8 + * [Protoc version 2.5](https://github.com/google/protobuf/releases/tag/v2.5.0) + * Set the following environment variables: + * Set `M2_HOME` environment variable to location of maven installation + * Set `JAVA_HOME` environment variable to java installation directory + * Add the following items to the environment variable `PATH`: + * Add the location of the `protoc.exe` executable in the windows path + * Add `%JAVA_HOME%/bin` and `%M2_HOME%/bin` to the windows path as well + * [Visual Studio](http://www.visualstudio.com) 2015 (preferred) or 2013. Most REEF developers use the free Community + Edition. + * NuGet 2.8.6 or later. (Included in VS 2015) * xunit.runner.console.2.1.0 package (installing it might require manual restore of NuGet packages). @@ -52,10 +62,10 @@ To run .NET tests on local machine from command line, execute `TestRunner.proj` already has a filter set up to exclude Yarn tests. Continuous Integration ------------- +---------------------- -We use [AppVeyor](https://www.appveyor.com/) to run continuous integration for REEF .NET code (i.e. build code and run tests -for all pull requests and commits to master branch). +We use [AppVeyor](https://www.appveyor.com/) to run continuous integration for REEF .NET code (i.e. build code and run +tests for all pull requests and commits to master branch). It can be convenient to set up AppVeyor for your fork of REEF repository, for example, to reproduce a test failure which can't be reproduced locally or to get AppVeyor test run results earlier than the official ones. @@ -77,29 +87,3 @@ modify `test_script` section as follows: `nuget restore` is necessary to install `xunit.runner.console` package, which by default is installed in `TestRunner.proj`. -Instructions on Building and Testing REEF .NET from Scratch ------------- - -Here is a step-by-step guide, if the instructions above didn't work and/or you prefer to build REEF .NET from Windows Command Prompt/PowerShell. - -1. Install Java Development Kit 7 or 8. Set `JAVA_HOME` as an Environment Variable - * Go [here](http://www.oracle.com/technetwork/java/javase/downloads) to download and install appropriate JDK - * Go to System Properties -> Environment Variables -> System Variables -> New... - * Create a variable called `JAVA_HOME` and set the value to be your jdk installation dir, like C:\Program Files\Java\jdk1.8.0_91 - * Update the Environment Variable `Path` by adding `%JAVA_HOME%\bin` - -2. Install Maven 3.3.9. Set `M2_HOME` and `M2` as Environment Variables - * Go [here](https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/) to download apache-maven-3.3.9-bin.zip - * Unzip it and place it to your desired location - * Create an Environment Variable called `M2_HOME` and set the value to be your unzip location, like C:\Program Files\Apache\apache-maven-3.3.9 - * Create another variable called `M2` and set the value to be `%M2_HOME%\bin` - * Update the Environment Variable `Path` by adding `%M2%` and `%M2_HOME%` - -3. Install Protocol Buffer 2.5. Add its path as an Environment Variable - * Go [here](https://github.com/google/protobuf/releases/tag/v2.5.0) to download protoc-2.5.0-win32.zip - * Unzip it and place it to your desired location. Make sure that protoc.exe is in that folder - * Update the Environment Variable `Path` by adding the unzip location, like C:\protobuf-2.5.0\src\protoc-2.5.0-win32 - -4. Git clone the repo to your local machine: `git clone [email protected]:apache/reef.git` - -5. To build REEF.NET from command line, execute: `msbuild .\lang\cs\Org.Apache.REEF.sln` http://git-wip-us.apache.org/repos/asf/reef/blob/f236c7a8/lang/java/BUILD.md ---------------------------------------------------------------------- diff --git a/lang/java/BUILD.md b/lang/java/BUILD.md index cbae5ab..4687530 100644 --- a/lang/java/BUILD.md +++ b/lang/java/BUILD.md @@ -28,14 +28,22 @@ Prerequisites Make sure that `mvn` is in your `$PATH` and `$M2_HOME` points to its installation. * [Protocol Buffers Compiler version 2.5](https://github.com/google/protobuf/releases/tag/v2.5.0). Make sure that `protoc` is on your `PATH`. + * Supported OSs where code was successfully built: + * Windows : Windows 8, 10, Server 2012,2016 + * Linux: Ubuntu versions 16.04 and 16.10 + * macOS Build Instructions ------------- +------------------ + +The REEF unit tests require a number of open files which is greater than the default open file limit on a number of Linux distributions such as Ubuntu 16.04/16.10. This limit is controlled in the shell by the "ulimit -n" command The Java side of REEF is built using Apache Maven. To build and run tests, execute: mvn clean install +REEF integration tests can take a while (~30 minutes on a modern multi-core machine), it may be faster to run one of the commands below which skips these tests. + To perform build alone without tests in a multithreaded mode, execute mvn -TC1 -DskipTests clean install @@ -44,6 +52,7 @@ To perform "fast" build, which skips tests and all code quality enforcement tool mvn clean install -DskipTests -TC1 -P!code-quality + Test Instructions ------------
