Чтобы заставить текстовый редактор Visual Studio показать слабую строку на 80-м столбце, Вы открываете RegEdit и определяете местоположение следующего:
Редактор HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\Text
заметьте, что 9.0 для Visual Studio 2008. Необходимо поместить 8.0, если у Вас есть Visual Studio 2005.
Вы создаете новую Строковую стоимость под названием Руководства и вводите следующее значение:
RGB (128,0,0) 80
можно скорректировать цвет RGB к значению, которое Вы любите. Номер 80 является столбцом, в котором Вы хотите, чтобы строка появилась. Можно добавить другую строку (хотя я не вижу, как это может помочь) как этот:
RGB (128,0,0) 2,80
Это заставит две строки появиться, один в 2th столбце и один в 80-м столбце.
Плыгин XJC с некоторым описанием - это ответ на вашу проблему, просто нужно найти тот, который работает. Лучший их источник здесь:
https://jaxb2-commons.dev.java.net/
В частности, этот:
Это может быть излишним для вашей ситуации, но я сделал это с помощью AspectJ (мы уже использовали аспекты в этом проекте, поэтому у нас уже была зависимость и воздействие).
Вы ' d объявить аспект в строках:
public aspect MyAspect
{
declare parents:
com.foo.generated.Adult
implements com.foo.Person;
declare parents:
com.foo.generated.Kid
implements com.foo.Person;
}
, который добавит интерфейс com.foo.Person
к классам com.foo.generated.Adult
и com. foo.generated.Kid
Возможно, для вашей цели это будет лишним, но у нас это сработало.
В документации для плагина вставки интерфейса предлагается следующее
[ Чтобы вызвать xjc с помощью подключаемого модуля вставки интерфейса из командной строки, вы можете написать:
java -cp $JAXB_HOME/share/lib/xjc-if-ins.jar -extension -Xifins schema
]
Я предполагаю, что вы вызываете основной метод неправильного класса - com.sun.tools.xjc.XJCFacade. Вероятно, вам следует повторить попытку с точным синтаксисом.
Вот ссылка на другой форум, где обсуждается похожий вопрос. http://forums.java.net/jive/message.jspa?messageID=220686
В моем случае вызов командной строки через java -jar работает:
java -jar $ somepath / jaxb-xjc.jar -classpath $ somepath / xjc-if-ins.jar my.xsd -d $ destdir -b $ bindingconfig -p $ желаемый пакет -extension -Xifins
Однако при выполнении муравьиной задачи xjc ошибка остается. Приведенное сообщение об ошибке вызывает раздражение, поскольку настоящая причина в моем случае - неправильный номер версии в файле класса, который пытается загрузить муравей (см. Трассировку стека ниже). Это правильное сообщение об ошибке появляется только при добавлении в ANT_OPTS следующего:
-Dcom.sun.tools.xjc.Options.findServices = true
[xjc] java.lang.UnsupportedClassVersionError: Bad version number in .class file
[xjc] at java.lang.ClassLoader.defineClass1(Native Method)
[xjc] at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
[xjc] at org.apache.tools.ant.AntClassLoader.defineClassFromData(AntClassLoader.java:1134)
[xjc] at org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1320)
[xjc] at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1376)
[xjc] at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1336)
[xjc] at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1074)
[xjc] at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
[xjc] at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
[xjc] at com.sun.tools.xjc.Options.findServices(Options.java:936)
[xjc] at com.sun.tools.xjc.Options.getAllPlugins(Options.java:336)
[xjc] at com.sun.tools.xjc.Options.parseArgument(Options.java:632)
[xjc] at com.sun.tools.xjc.Options.parseArguments(Options.java:742)
[xjc] at com.sun.tools.xjc.XJC2Task._doXJC(XJC2Task.java:444)
[xjc] at com.sun.tools.xjc.XJC2Task.doXJC(XJC2Task.java:434)
[xjc] at com.sun.tools.xjc.XJC2Task.execute(XJC2Task.java:369)
[xjc] at com.sun.istack.tools.ProtectedTask.execute(ProtectedTask.java:55)
[xjc] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
[xjc] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[xjc] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[xjc] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[xjc] at java.lang.reflect.Method.invoke(Method.java:585)
[xjc] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[xjc] at org.apache.tools.ant.Task.perform(Task.java:348)
[xjc] at org.apache.tools.ant.Target.execute(Target.java:390)
[xjc] at org.apache.tools.ant.Target.performTasks(Target.java:411)
[xjc] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1360)
[xjc] at org.apache.tools.ant.Project.executeTarget(Project.java:1329)
[xjc] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[xjc] at org.apache.tools.ant.Project.executeTargets(Project.java:1212)
[xjc] at org.apache.tools.ant.Main.runBuild(Main.java:801)
[xjc] at org.apache.tools.ant.Main.startAnt(Main.java:218)
[xjc] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
[xjc] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
[xjc]
[xjc] failure in the XJC task. Use the Ant -verbose switch for more details