2015-10-09 6 views
2

Я пытаюсь исключить две таблицы, созданные Liquibase при использовании TypeSafe Config.Генерация кода Jooq «исключает» не работает с config config.

jooq { 
    # databasechangelog = Liquibase generated tables 
    # databasechangeloglock = Liquibase generated tables 
    excludes = "databasechangelog, databasechangeloglock" 
    } 

Когда я только поставить один исключает такие как "databsechangelog", она работает.

Более одного исключений следует разделять запятой (http://www.jooq.org/doc/2.6/manual/code-generation/codegen-configuration/), но вместо этого он генерирует обе таблицы.

Выполнение этого также не допускается.

excludes = "databasechangelog", "databasechangeloglock"

Внутри библиотеки, ее упрощающих вызов этого (примечание: getExcludes является String)

database.setExcludes(new String[]{StringUtils.defaultString(d1.getExcludes())}); 

Кто-нибудь еще столкнулся с этой проблемой?

Вот мое поколение код

 new GenerationTool { 
     setConnection(connection) 
     run(new Configuration { 
      withGenerator(new Generator { 
      withName(config.jooq.generatorClass) 
      withDatabase(new org.jooq.util.jaxb.Database { 
       withIncludes(config.jooq.includes) 
       withExcludes(config.jooq.excludes) 
       withInputSchema(config.jooq.inputSchema) 
       withName(config.jooq.databaseClass) 
      }) 
      withTarget(new Target { 
       withPackageName(config.jooq.pkg) 
       withDirectory(config.jooq.directory) 
      }) 
      withGenerate(new Generate { 
       setDaos(true) 
      }) 
      }) 
     }) 
     } 
+0

[Для записи, этот вопрос также был задан на jOOQ группа пользователей] (https://groups.google.com/forum/#!topic/jooq-user/WjbJoc9Uh8Y) –

ответ

0

Вы ссылки на руководство, начиная с версии 2.6. В прежние времена мы использовали разделенные запятыми списки выражений в include/excludes - но верьте или нет, у некоторых людей были запятые в именах таблиц/столбцов, поэтому мы сбрасывали запятые. В конце концов, включает/исключает только регулярные выражения, и вы можете разделить свои индивидуальные рисунки с помощью «оператора объединения», труба: |

I.e. написать:

jooq { 
    # databasechangelog = Liquibase generated tables 
    # databasechangeloglock = Liquibase generated tables 
    excludes = "databasechangelog|databasechangeloglock" 
} 

Это также документированы в разделе «функция удаления» (ищите «разделенный запятыми»): http://www.jooq.org/doc/latest/manual/reference/migrating-to-3.0

Смежные вопросы