AIInterface:Java: Difference between revisions

From Spring
Jump to navigationJump to search
Hoijui (talk | contribs)
No edit summary
Hoijui (talk | contribs)
No edit summary
Line 17: Line 17:


=== Download ===
=== Download ===
It is only available in hte caiinterface branch of the spring SNV directory at the moment.
It is only available in the ''caiinterface'' branch of the spring SNV directory at the moment. Refer to [[Building_spring#Obtaining_the_Source|Obtaining the Source]], and replace ''trunk'' with ''branches/caiinterface''.


It will come with spring soon.
It will come with spring soon.
Line 25: Line 25:


=== How to compile ===
=== How to compile ===
====The easy way====
'''The easy way'''
Use Scons or CMake (refer to [[Building_spring|Building spring]]).
Use Scons or CMake (refer to [[Building_spring|Building spring]]).


====The hard way====
'''The hard way'''
C part:
C part:
* include directories: ''{spring_source}/rts/System {spring_source}/AI/Interfaces/Java''
* include directories: ''{spring_source}/rts/System {spring_source}/AI/Interfaces/Java''
Line 34: Line 34:
* create a dynamic loadable shared library (module)
* create a dynamic loadable shared library (module)
* should compile with all C++ compilers (tested with: MinGW, GCC, Intel)
* should compile with all C++ compilers (tested with: MinGW, GCC, Intel)
teted under Linux and Win32
tested under Linux and Win32


Java part:
Java part:
Line 43: Line 43:
* [http://www.java.com/de/download/ Java Runtime Environment v1.5.0+ (tested with 1.6.0)]
* [http://www.java.com/de/download/ Java Runtime Environment v1.5.0+ (tested with 1.6.0)]


====The easy way====
'''The easy way'''
Use Scons or CMake (refer to [[Building_spring|Building spring]]).
Use Scons or CMake (refer to [[Building_spring|Building spring]]).


====The hard way====
'''The hard way'''
from source at ''{spring_source}/AI/Interfaces/Java/'' :
from source at ''{spring_source}/AI/Interfaces/Java/'' :
* copy libJava-0.1.so, libJava-0.1.dylib or libJava-0.1.dll to ''{spring_data_dir}/AI/Interfaces/impls/''
* copy libJava-0.1.so, libJava-0.1.dylib or libJava-0.1.dll to ''{spring_data_dir}/AI/Interfaces/impls/''

Revision as of 20:51, 19 December 2008

Java
Developer
hoijui
Version
0.1 (spring SVN)
Language Support
Java
Status
pre alpha
License
GNU GPL v2+
<- Back to AI Interfaces

Forum threads

Description

This AI interface is written in C, Java and AWK, and heavily relies on JNI and JNA. It allows spring to load AIs written in Java. These AIs consist of a .jar file, which contains at least one class that implements the interface (see {spring_source}/AI/Interfaces/Java/java/src/com/clan_sy/spring/ai/AI.java).

The source of this AI interface library can be found here: {spring_source}/AI/Interfaces/Java/. It is only available in hte caiinterface branch of the spring SNV directory at the moment.

For reference only: JAI (DEPRECATED)

Currently supported AIs

Download

It is only available in the caiinterface branch of the spring SNV directory at the moment. Refer to Obtaining the Source, and replace trunk with branches/caiinterface.

It will come with spring soon.

Known Crashes

  • None

How to compile

The easy way Use Scons or CMake (refer to Building spring).

The hard way C part:

  • include directories: {spring_source}/rts/System {spring_source}/AI/Interfaces/Java
  • source files: {spring_source}/AI/Interfaces/Java/*.c*
  • create a dynamic loadable shared library (module)
  • should compile with all C++ compilers (tested with: MinGW, GCC, Intel)

tested under Linux and Win32

Java part: TODO

How to install/use

Additional software you need to have installed to be able to use Java AIs:

The easy way Use Scons or CMake (refer to Building spring).

The hard way from source at {spring_source}/AI/Interfaces/Java/ :

  • copy libJava-0.1.so, libJava-0.1.dylib or libJava-0.1.dll to {spring_data_dir}/AI/Interfaces/impls/
  • copy InterfaceInfo.lua to {spring_data_dir}/AI/Interfaces/data/Java-0.1/

Make sure your Env-Vars are set like this (replace absolute paths):

On Windows:
SET JAVA_HOME=C:/Program Files/Java/jre1.6.0_05
SET PATH=%JAVA_HOME%/bin;%JAVA_HOME%/bin/client;%PATH%

On Linux:
export JAVA_HOME=/usr/jre1.6.0_10
export PATH=$JAVA_HOME/bin:$JAVA_HOME/bin/client:$PATH

<- Back to AI page