Jni classpath et encodage

Battant

Membre junior
16 Février 2011
23
0
Bonjour,

J'ai importé puis compilé un programme java plus un module en objective c qui utilise le carnet d'adresse obtenu grâce au module jni d'xcode. J'ai mis des fichiers jar dans le dossier lib mais je n'arrive pas à les ajouter au classpath. bien que dans mon script ant, j'aie mis les lignes suivantes.

Bloc de code:
?xml version="1.0" encoding="ISO-8859-1"?>
<project name="hifflermanager" default="jar" basedir="..">

	<!-- Global Properties -->
	<property environment="env"/>
	
      <path id="projet.classpath">
    <fileset dir="${basedir}/lib">
      <include name="*.jar" />  
    </fileset>
 	 
       <pathelement location="${basedir}" />
</path>
    
	<!-- building in Xcode -->
	<condition property="product" value="${env.PRODUCT_NAME}">
		<isset property="env.PRODUCT_NAME"/>
	</condition>
    
	<condition property="src" value="${env.SRCROOT}/src">
		<isset property="env.SRCROOT"/>
	</condition>
	
	<condition property="obj" value="${env.OBJECT_FILE_DIR}">
		<isset property="env.OBJECT_FILE_DIR"/>
	</condition>
    
	<condition property="dst" value="${env.BUILT_PRODUCTS_DIR}">
		<isset property="env.BUILT_PRODUCTS_DIR"/>
	</condition>
	
    
	<!-- building from the command line -->
	<condition property="src" value="src">
		<not>
			<isset property="src"/>
		</not>
	</condition>
    
	<condition property="obj" value="build/obj">
		<not>
			<isset property="obj"/>
		</not>
	</condition>
	
	<condition property="dst" value="build">
		<not>
			<isset property="dst"/>
		</not>
	</condition>
	
	<condition property="product" value="hifflermanager">
		<not>
			<isset property="product"/>
		</not>
	</condition>
	
	
	<!-- Targets -->
	<target name="init" description="Create build directories">
        <mkdir dir="${obj}/${product}"/>
		<mkdir dir="${dst}"/>
	</target>
	
	<target name="compile" depends="init" description="Compile">
		<javac destdir="${obj}/${product}" deprecation="on" source="1.5" target="1.5" fork="true" debug="true" encoding="ISO-8859-1" debuglevel="lines,source"
					includeantruntime="true">
			<src path="${src}/java"/>
       <classpath refid="projet.classpath" />
		</javac>
	</target>
	
	<target name="copy" depends="init" description="Copy resources">
		
	</target>
	
	<target name="jar" depends="compile, copy" description="Assemble Jar file">
		<jar jarfile="${dst}/${product}.jar" basedir="${obj}/${product}" manifest="resources/Manifest" index="true"/>
	</target>
	
	<target name="install" depends="jar" description="Alias for 'jar'">
		<!-- sent by Xcode -->
	</target>
	
	<target name="clean" description="Removes build directories">
		<!-- sent by Xcode -->
		<delete dir="${obj}/${product}"/>
		<delete file="${dst}/${product}.jar"/>
	</target>
	
	<target name="installhdrs" description="">
		<!-- sent by Xcode -->
		<echo>"Nothing to do for install-headers phase"</echo>
	</target>
</project>

Comme on peut le constater. Je travail dans l'encodage "ISO-8859-1" et j'ai créé un fileset pour tenter d'ajouter mes fichiers jar au classpath mais ça ne marche pas. La valeur du classpath et la suivante :

Bloc de code:
$JAVAROOT/hifflermanager.jar

Eclipse arrive a compiler tous les fichiers jar en un seul (fonction export) mais xcode ne semble pas le faire. En plus la fonction autocomplete de xcode marche moins bien que celle d'eclipse. Mais, sous eclipse, impossible d'accéder aux librairies native. Pas même avec objectiveeclipse et pour cause cocoa semble ne pas être reconnu par eclipse.

Que faire ?

Merci pour votre aide.

Salutations

Battant