src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java

changeset 408
b0610cd08440
parent 368
0989ad8c0860
child 409
e56be3a2287a
     1.1 --- a/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java	Thu Sep 26 10:43:28 2013 -0700
     1.2 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java	Fri Oct 04 16:21:34 2013 +0100
     1.3 @@ -524,29 +524,34 @@
     1.4              String classDir = options.destDir.getAbsolutePath();
     1.5              String classpathString = createClasspathString();
     1.6              boolean bootCP = useBootClasspath(EndpointContext.class) || useBootClasspath(JAXBPermission.class);
     1.7 -            String[] args = new String[4 + (bootCP ? 1 : 0) + (options.debug ? 1 : 0)
     1.8 -                    + (options.encoding != null ? 2 : 0) + sourceFiles.size()];
     1.9 -            args[0] = "-d";
    1.10 -            args[1] = classDir;
    1.11 -            args[2] = "-classpath";
    1.12 -            args[3] = classpathString;
    1.13 -            int baseIndex = 4;
    1.14 +            List<String> args = new ArrayList<String>();
    1.15 +            args.add("-d");
    1.16 +            args.add(classDir);
    1.17 +            args.add("-classpath");
    1.18 +            args.add(classpathString);
    1.19              //javac is not working in osgi as the url starts with a bundle
    1.20              if (bootCP) {
    1.21 -                args[baseIndex++] = "-Xbootclasspath/p:"+JavaCompilerHelper.getJarFile(EndpointContext.class)+File.pathSeparator+JavaCompilerHelper.getJarFile(JAXBPermission.class);
    1.22 +                args.add("-Xbootclasspath/p:"
    1.23 +                        + JavaCompilerHelper.getJarFile(EndpointContext.class)
    1.24 +                        + File.pathSeparator
    1.25 +                        + JavaCompilerHelper.getJarFile(JAXBPermission.class));
    1.26              }
    1.27  
    1.28              if (options.debug) {
    1.29 -                args[baseIndex++] = "-g";
    1.30 +                args.add("-g");
    1.31              }
    1.32  
    1.33              if (options.encoding != null) {
    1.34 -                args[baseIndex++] = "-encoding";
    1.35 -                args[baseIndex++] = options.encoding;
    1.36 +                args.add("-encoding");
    1.37 +                args.add(options.encoding);
    1.38 +            }
    1.39 +
    1.40 +            if (options.javacOptions != null) {
    1.41 +                args.addAll(options.getJavacOptions(args, listener));
    1.42              }
    1.43  
    1.44              for (int i = 0; i < sourceFiles.size(); ++i) {
    1.45 -                args[baseIndex + i] = sourceFiles.get(i);
    1.46 +                args.add(sourceFiles.get(i));
    1.47              }
    1.48  
    1.49              listener.message(WscompileMessages.WSIMPORT_COMPILING_CODE());
    1.50 @@ -558,7 +563,7 @@
    1.51                  listener.message("javac "+ argstr.toString());
    1.52              }
    1.53  
    1.54 -            return JavaCompilerHelper.compile(args, out, receiver);
    1.55 +            return JavaCompilerHelper.compile(args.toArray(new String[args.size()]), out, receiver);
    1.56          }
    1.57          //there are no files to compile, so return true?
    1.58          return true;

mercurial