Someone knows how I can successfully compile standard genexus classes (Genesus Standard Classes) found in this repository: link
I am working on Windows 10, since the build.bat script that comes in the package suggests that it is possible to do it from Windows. After solving some problems with the character encoding I managed to move forward a bit but it always ends with errors.
I've already tried using Ant 1.10 and Ant 1.54, in combination with Java versions 8, 7, 6, 5 and 4.
So far without success.
With Java 5 I have the least amount of erorres:
build.bat
@echo off
setlocal enabledelayedexpansion
rem set JAVA_HOME=C:\Progra~2\Java\jdk1.7.0_25
set JAVA_HOME=C:\Progra~1\Java\jdk1.5.0_22
rem set JAVA_HOME=C:\Progra~1\Java\jdk1.6.0_45
rem set JAVA_HOME=C:\j2sdk1.4.2_19
SET CLASSPATH=.\classes;.;%java_home%\jre\lib\rt.jar;
FOR /f "tokens=*" %%G IN ('dir /b .\libs\*.jar') Do SET CLASSPATH=!CLASSPATH!%%G;
echo *************************
echo %CLASSPATH%
echo *************************
rem set ANT_HOME=F:\apache-ant-1.10.3
set ANT_HOME=f:\apache-ant-1.5.4
set ANT_OPTS=-D"file.encoding=UTF-8"
call %ant_home%\bin\ant -Dfile.encoding=UTF-8
result:
*************************
.\classes;.;C:\Progra~1\Java\jdk1.5.0_22\jre\lib\rt.jar;activation.jar;ant-jakarta-bcel.jar;ant-nodeps.jar;ant.jar;artech.security-sql.jar;bcprov-jdk15-146.jar;ClassesFromGXClassR.jar;commons-io-1.4.jar;commons-lang-2.4.jar;gxclassd.jar;iaik_ssl_ae.jar;iaik_ssl_demo_ae.jar;ifxjdbc.jar;iText.jar;j2ee-support.jar;javax.servlet.jar;jcert.jar;jdbc2_0-stdext.jar;JimiProClasses.jar;jnet.jar;jsrvany.jar;jsse.jar;lizard_113.jar;log4j-1.2.15.jar;lucene-core-2.2.0.jar;lucene-highlighter-2.2.0.jar;lucene-spellchecker-2.2.0.jar;mail.jar;mx4j-jmx.jar;netscape.jar;ooffice-doc.jar;poi-ooxml-schemas.jar;poi-ooxml.jar;poi.jar;swt.jar;SWT_MDI.jar;Tidy.jar;TinySSL.jar;tm-extractors-0.4.jar;vbdev.jar;vbjdev.jar;vbjorb.jar;
*************************
Buildfile: build.xml
build:
compile:
init:
[echo] Makefile - GeneXus Java Standard classes
clean:
[delete] Deleting directory F:\workspace\java\Java\classes
init:
[mkdir] Created dir: F:\workspace\java\Java\classes
[echo] Makefile - GeneXus Java Standard classes
copyResources:
[copy] Copying 47 files to F:\workspace\java\Java\classes\com\genexus
[copy] Copying 1 file to F:\workspace\java\Java\classes
compileSun:
[javac] Compiling 1348 source files to F:\workspace\java\Java\classes
[javac] F:\workspace\java\Java\sources\com\genexus\webpanels\GXWebRow.java:77: cannot find symbol
[javac] symbol : method closeTag(com.genexus.ModelContext,java.lang.String)
[javac] location: class com.genexus.webpanels.GXWebStdMethods
[javac] GXWebStdMethods.closeTag(this.context, "cell");
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\webpanels\GXWebGrid.java:92: cannot find symbol
[javac] symbol : method closeTag(com.genexus.ModelContext,java.lang.String)
[javac] location: class com.genexus.webpanels.GXWebStdMethods
[javac] GXWebStdMethods.closeTag(this.context, tag);
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\webpanels\GXWebGrid.java:120: cannot find symbol
[javac] symbol : method closeTag(com.genexus.ModelContext,java.lang.String)
[javac] location: class com.genexus.webpanels.GXWebStdMethods
[javac] GXWebStdMethods.closeTag(this.context, "row");
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:30: com.genexus.filters.ExpiresFilter is not abstract and does not override abstract method init(javax.servlet.FilterConfig) in javax.servlet.Filter
[javac] public class ExpiresFilter implements Filter {
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:276: cannot find symbol
[javac] symbol : method onBeforeWriteResponseBody(javax.servlet.http.HttpServletRequest,com.genexus.filters.ExpiresFilter.XHttpServletResponse)
[javac] location: class com.genexus.filters.ExpiresFilter.XPrintWriter
[javac] onBeforeWriteResponseBody(request, response);
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:440: cannot find symbol
[javac] symbol : method onBeforeWriteResponseBody(javax.servlet.http.HttpServletRequest,com.genexus.filters.ExpiresFilter.XHttpServletResponse)
[javac] location: class com.genexus.filters.ExpiresFilter.XServletOutputStream
[javac] onBeforeWriteResponseBody(request, response);
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\webpanels\GXWebStdMethods.java:62: cannot find symbol
[javac] symbol : method tagHasStdMethod(java.lang.String)
[javac] location: class com.genexus.webpanels.GXWebStdMethods
[javac] if (tagHasStdMethod(controlType))
[javac] ^
[javac] Note: Some input files use or override a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 7 errors
BUILD FAILED
file:F:/workspace/java/Java/build.xml:33: Compile failed; see the compiler error output for details.
Total time: 4 seconds
I also tried Linux, and the result is the same.
Any suggestions are welcome.
Edited 1: I found that the sources \ com \ genexus \ webpanels \ GXWebStdMethods.java file is incomplete (in all Evo2 packages). I completed using code from the Evo1U8, the webpanels are not relevant for this investigation.
Now I have only 3 errors:
compileSun:
[javac] Compiling 1348 source files to F:\workspace\java\Java\classes
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:30: com.genexus.filters.ExpiresFilter is not abstract and does not override abstract method init(javax.servlet.FilterConfig) in javax.servlet.Filter
[javac] public class ExpiresFilter implements Filter {
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:276: cannot find symbol
[javac] symbol : method onBeforeWriteResponseBody(javax.servlet.http.HttpServletRequest,com.genexus.filters.ExpiresFilter.XHttpServletResponse)
[javac] location: class com.genexus.filters.ExpiresFilter.XPrintWriter
[javac] onBeforeWriteResponseBody(request, response);
[javac] ^
[javac] F:\workspace\java\Java\sources\com\genexus\filters\ExpiresFilter.java:440: cannot find symbol
[javac] symbol : method onBeforeWriteResponseBody(javax.servlet.http.HttpServletRequest,com.genexus.filters.ExpiresFilter.XHttpServletResponse)
[javac] location: class com.genexus.filters.ExpiresFilter.XServletOutputStream
[javac] onBeforeWriteResponseBody(request, response);
[javac] ^
[javac] Note: Some input files use or override a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: Some input files use unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
[javac] 3 errors