GWT 2.5.1 ha fijado finalmente este problema. Las notas de la versión que documentan esta aquí:
https://developers.google.com/web-toolkit/release-notes#Release_Notes_2_5_1
y afirman que:
"Aplicaciones construidas con DirectInstallLinker debe trabajar en una página donde están prohibidas las secuencias de comandos en línea (por ejemplo,una extensión de Chrome) "
Esto significa que ahora es posible usar DirectInstallLinker para vincular su aplicación empaquetada de Chrome de manera que cumpla con los nuevos requisitos de seguridad de la versión 2 del manifiesto con respecto a los scripts en línea. Esto es, al usar DirectInstallLinker para vincular su aplicación con GWT 2.5.1 seleccionada como su versión de GWT, GWT no colocará ningún elemento de script en línea en su código JavaScript generado, y por lo tanto no se violará el nuevo requisito de manifiesto versión 2 de que no haya guiones en línea.
I descubrieron que SingleScriptLinker también parece funcionar para mi propia aplicación; sin embargo, el Issue 7685 advierte contra el uso de SingleScriptLinker porque "Esto genera una línea $ doc.write que está prohibida en las aplicaciones empaquetadas." Estoy usando DirectInstallLinker.
Aquí es el Javadoc para DirectInstallLinker:
http://google-web-toolkit.googlecode.com/svn/javadoc/2.5/com/google/gwt/core/linker/DirectInstallLinker.html
Para utilizar este conector, se pueden incluir lo siguiente en su archivo * .gwt.xml:
<define-linker name="dil" class="com.google.gwt.core.linker.DirectInstallLinker"/>
<add-linker name="dil" />
(dil puede haber reemplazado por cualquier cosa que elija, siempre que no haya guiones u otros caracteres ilegales).
Deberá seleccionar GWT 2.5.1 como su versión de GWT. Si está utilizando una versión anterior de GWT en una versión desactualizada de Eclipse como Ganymede (como yo), tendrá que actualizar al menos a Helios y luego importar su proyecto a su nuevo entorno Eclipse. Las direcciones URL de archivo para el complemento de Google para Eclipse que pueden utilizarse para las últimas tres versiones de Eclipse se pueden encontrar aquí:
https://developers.google.com/eclipse/docs/download
Con lo anterior en su lugar, usted debe ser capaz de establecer
"manifest_version": 2
en su archivo manifest.json y no experimenta ningún error debido a Javascript en línea generado por GWT. Esto debería permitir que su aplicación web de Chrome sea aceptable para Chrome Web Store (que ahora requiere la versión 2 del manifiesto para cualquier aplicación nueva o para las actualizaciones de las aplicaciones actuales), siempre que no haya otros problemas.
Mike Grace, a continuación, es correcto y usted comprende el problema. Podría piratear un postprocesador para GWT para convertir etiquetas de guiones en línea a archivos JS, pero eso es feo. En cambio, me quedaría con el manifiesto 1 por ahora (Chrome aún no lo ha desaprobado) y presionar a la gente de GWT para que arregle su código. –
Parece la única solución –
. Hay noticias de Google sobre el tema (el complemento DevMode para Chrome debe actualizarse para manifestar la versión 2 para su implementación en Chrome Web Store, y contiene una aplicación GWT para administrar la configuración). Ver mi respuesta editada a continuación. –