Tanguy,
I am completely unfamiliar with this package you are calling.
But it looks like you are on a Windows machine and my guess is, the param you
are handing in for the directory is being presented literally to the
application - which is likely attempting to escape the characters vs utilizing
them as directory separators.
You may want to try this to see if it gets you passed your
IllegalArgumentException: simply use ${file.separator} vs the forward slash.
Something like this:
<project name="product-registration-TT-portlet" basedir="." default="deploy">
<import file="../build-common-portlet.xml" />
<target name="build-lang">
<antcall target="build-lang-cmd">
<param name="lang.dir"
value="docroot${file.separator}WEB-INF${file.separator}src${file.separator}content"
/>
<param name="lang.file" value="Language" />
<param name="lang.translate" value="true" />
</antcall>
target>
</project>
Or if you don't like that you can store as a property:
<project name="product-registration-TT-portlet" basedir="." default="deploy">
<import file="../build-common-portlet.xml" />
<target name="build-lang">
<property name="DIR"
value="docroot${file.separator}WEB-INF${file.separator}src${file.separator}content"/>
<antcall target="build-lang-cmd">
<param name="lang.dir" value=${DIR}" />
<param name="lang.file" value="Language" />
<param name="lang.translate" value="true" />
</antcall>
target>
</project>
I'm not sure it will fix your problem - but its a start.
I did a preliminary google and found the code here:
http://grepcode.com/file/repo1.maven.org/maven2/com.liferay.portal/portal-impl/6.0.5/com/liferay/portal/tools/LangBuilder.java
Again - I don't know this code base whatsoever, but what's the download site
for this? Be easier to help if I can test against the library.
---- Tanguy Thomas <[email protected]> wrote:
> Dear all,
>
> I am relatively new to Ant using, so may I may miss something obvious but I
> tried to follow guidelines and search documentation without success.
>
> When I add the <target name="build-lang">...</target-lang> I get an
> IllegalArgumentException related to the lang.dir. Ant however does
> something, it creates an English version (but not any other translation)
> Language_en.properties, and says "build successful" after this exception.
> In case this matters, I am using the JDK 1.8.0 (C:\Program
> Files\Java\jdk1.8.0_25)
>
> The build.xml is
>
>
>
>
>
>
>
>
>
>
> *<project name="product-registration-TT-portlet" basedir="."
> default="deploy"> <import file="../build-common-portlet.xml" /> <target
> name="build-lang"> <antcall target="build-lang-cmd"> <param
> name="lang.dir" value="docroot/WEB-INF/src/content" /> <param
> name="lang.file" value="Language" /> <param name="lang.translate"
> value="true" /> </antcall> </target></project>*
>
> And the output is :
>
>
> *F:\COEProjects\plugins\plugins-lia\portlets\product-registration-TT-portlet>antbuild-langBuildfile:
> F:\COEProjects\plugins\plugins-lia\portlets\product-registration-TT-portlet\build.xml*
> *build-lang:*
>
>
>
>
>
> *build-lang-cmd: [java] Exception in thread "main"
> java.lang.IllegalArgumentException: Bad argument
> docroot/WEB-INF/src/content [java] at
> com.liferay.portal.tools.ArgumentsUtil.parseArguments(ArgumentsUtil.java:32)
> [java] at
> com.liferay.portal.tools.LangBuilder.main(LangBuilder.java:57) [java]
> Java Result: 1*
>
> *BUILD SUCCESSFULTotal time: 0 seconds*
>
> Of course, the folder name is correct (and it somehow finds my files as it
> creates the Language_en.properties file. I also tried to put backslashes
> instead of foreward slashes, I tried to add in front or after the folder
> name, to escape them etc. but nothing helps.
>
> Please note that I searched on internet for example build.xml files, and as
> I saw a parameter called "build-lang-cmd" I tried to add it. Though I have
> no idea what it exactly tells, In that case strangely, I don't get the
> exception, but I get lot of errors telling the client-id argument is
> missing. As a result, all translation files are created, but they all
> contain the original English content.
>
> The build file in this example would be :
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *<project name="product-registration-TT-portlet" basedir="."
> default="deploy"> <import file="../build-common-portlet.xml" /> <target
> name="build-lang"> <antcall target="build-lang-cmd"> <param
> name="lang.dir" value="docroot/WEB-INF/src/content" /> <param
> name="lang.file" value="Language" /> <param name="lang.translate"
> value="true" /> </antcall> </target> <target name="build-lang-cmd"> <java
> classname="com.liferay.portal.tools.LangBuilder"
> classpathref="portal.classpath" fork="true" newenvironment="true"> <jvmarg
> value="-Dexternal-properties=com/liferay/portal/tools/dependencies/portal-tools.properties"
> /> <jvmarg value="-Dfile.encoding=UTF-8" /> <jvmarg
> value="-Duser.country=US" /> <jvmarg value="-Duser.language=en" /> <arg
> value="lang.dir=${lang.dir}" /> <arg value="lang.file=${lang.file}"
> /> <arg value="lang.plugin=true" /> <arg
> value="lang.translate=${lang.translate}" /> </java> <copy
> file="${lang.dir}/${lang.file}.properties"
> tofile="${lang.dir}/${lang.file}_en.properties" /> </target></project>*
> I would get as output a lot of text such as :
>
>
>
>
>
>
>
> * [java] Correlation ID: 3c2e5a07-204a-47a3-a413-316ab512277c
> [java] Timestamp: 2015-01-03 17:33:50Z [java] Translating en_es
> where-purchased-required Please tell us where youpurchased the product
> [java]
> com.liferay.portal.kernel.microsofttranslator.MicrosoftTranslatorException:
> ACS90011: The required field 'client_id' is missing. [java] Trace ID:
> 2ce232f9-4ada-4901-b61e-a8a65ae7d4d6*
>
> I mainly would like to understand what goes wrong, I can use with or
> without this extra "build-lang-cmd" but I would like to understand also
> what I am doing by adding or omitting this.
>
> Thank you very much for your help, and happy new year to whoever reads this
> :)
>
> --
> Tanguy Thomas
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]