app/代码/workspace_robo4/plugins/dotnet
zhoudaxia 1d5f0aad08 合并代码 2016-08-22 08:26:32 +08:00
..
robocode.dotnet.api 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.content 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.control.api 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.distribution 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.host 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.installer 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.nhost 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.ntests 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.robotscs 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.samples 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.tests 合并代码 2016-08-22 08:26:32 +08:00
tools 合并代码 2016-08-22 08:26:32 +08:00
ReadMe.txt 合并代码 2016-08-22 08:26:32 +08:00
generateProxies.cmd 合并代码 2016-08-22 08:26:32 +08:00
mvn.cmd 合并代码 2016-08-22 08:26:32 +08:00
mvnassembly.cmd 合并代码 2016-08-22 08:26:32 +08:00
pom.xml 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.iml 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.ipr 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.iws 合并代码 2016-08-22 08:26:32 +08:00
robocode.dotnet.sln 合并代码 2016-08-22 08:26:32 +08:00

ReadMe.txt

====
    Copyright (c) 2001-2016 Mathew A. Nelson and Robocode contributors
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://robocode.sourceforge.net/license/epl-v10.html
====

This is guide to build Robocode for .NET

REQUIRED TOOLS FOR BUILDING THE ROBOCODE .NET PLUG-IN
=====================================================

Microsoft C# Compiler and .NET SDK
----------------------------------
- You need C# compiler and .NET SDK at least 4.0:
  http://www.microsoft.com/en-us/download/details.aspx?id=17851

- Best option is to install Visual Studio C# Express 2010 or newer.

- NOTE: Make sure you have csc.exe on PATH.

Microsoft HTML Help 1 Compiler and Sandcastle Help File Builder
---------------------------------------------------------------
- 'HTML Help 1 compiler' must be installed on the system - required by the
  Sandcastle Help File Builder (SHFB)

  HTML Help 1 compiler:
  http://msdn.microsoft.com/en-us/library/ms669985(VS.85).aspx

- Sandcastle Help File Builder (SHFB) must be installed on the system.
  http://shfb.codeplex.com/

  NOTE: When installing the SHFB, you don't need to install HTML Help 2 as
       only version 1 is used for Robocode.

Java Development Kit (JDK) and JAVA_HOME path
---------------------------------------------
- Oracle JDK 6 or newer must be installed on the system:
  http://www.oracle.com/technetwork/java/javase/downloads

- NOTE: Make sure to install the proper version (32 or 64-bit) depending on the
        system.


HOW TO BUILD THE ROBOCODE .NET PLUG-IN
======================================

1) Build the regular part of Robocode first with 'mvn install'
  (or mvnassembly.cmd) from source code root directory of Robocode.

2) CD (change directory) to \plugins\dotnet

3) Run: tools\loadTools.cmd 

4) Run: tools\keys\gennetkey.cmd 

5) Run: mvnassembly.cmd (standing in the \plugins\dotnet directory)

9) Find the resulting distribution file for the Robocode .NET plug-in named 
   robocode.dotnet-x.x.x.x-setup.jar within this directory:
   \plugins\dotnet\robocode.dotnet.distribution\target\

   
HOW TO BUILD NEW PROXY CLASSES USING JNI4NET
============================================
Robocode uses Jni4net (http://jni4net.com/) to bridge the .NET and Java parts
of Robocode. Only the .NET plug-in is written for the Microsoft .NET platform.
The rest of Robocode is build for the Java platform.

When changing the public APIs or internal classes of Robocode it is important
that the corresponding .NET classes are updated as well. Some classes for the
.NET are handwritten. Other parts are auto-generated using the Jni4Net proxygen
tool (details are provided here: http://jni4net.com/).

In order to update all the auto-generated source files for the .NET plugin you
must:

1) CD (change directory) to \plugins\dotnet

2) Run: generateProxies.cmd

NOTE: You might need to remove the 'rem' and change the following lines inside
      the generateProxies.cmd in order to force the JAVA_HOME and PATH to the
	  correct Java version:

rem set JAVA_HOME=%JDK6_HOME%
rem set PATH=%JAVA_HOME%\bin;%PATH%