Мое CSS3-решение flexbox в двух вариантах: один сверху ведет себя как промежуток, а второй снизу ведет себя как div, беря всю ширину с помощью оболочки. Их классы «top», «bottom» и «bottomwrapper» соответственно.
body {
font-family: sans-serif;
}
.top {
display: -webkit-inline-flex;
display: inline-flex;
}
.top, .bottom {
background-color: #3F3;
border: 2px solid #FA6;
}
/* bottomwrapper will take the rest of the width */
.bottomwrapper {
display: -webkit-flex;
display: flex;
}
table {
border-collapse: collapse;
}
table, th, td {
width: 280px;
border: 1px solid #666;
}
th {
background-color: #282;
color: #FFF;
}
td {
color: #444;
}
th, td {
padding: 0 4px 0 4px;
}
Is this
<div class="top">
<table>
<tr>
<th>OS</th>
<th>Version</th>
</tr>
<tr>
<td>OpenBSD</td>
<td>5.7</td>
</tr>
<tr>
<td>Windows</td>
<td>Please upgrade to 10!</td>
</tr>
</table>
</div>
what you are looking for?
<br>
Or may be...
<div class="bottomwrapper">
<div class="bottom">
<table>
<tr>
<th>OS</th>
<th>Version</th>
</tr>
<tr>
<td>OpenBSD</td>
<td>5.7</td>
</tr>
<tr>
<td>Windows</td>
<td>Please upgrade to 10!</td>
</tr>
</table>
</div>
</div>
this is what you are looking for.
Я не могу это проверить, но я могу придумать два подхода. Любой из них может работать для вас.
Вариант 1:
В одном из проектов вы можете определить конфигурацию для плагина tomcat. В приведенном ниже фрагменте определены два выполнения, оба привязаны к этапу предварительного тестирования интеграции (это может быть не лучший этап для этого, но кажется хорошей отправной точкой, поскольку война будет упакована). Каждое выполнение будет развертывать войну, определенную в свойстве warFile его конфигурации.
<project>
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.0-beta-1</version>
<executions>
<execution>
<id>deploy1</id>
<phase>pre-integration-test</phase>
<configuration>
<warFile>path/to/my/warFile1.war</warFile>
</configuration>
<goals>
<goal>deploy</goal>
</goals>
</execution>
<execution>
<id>deploy2</id>
<phase>pre-integration-test</phase>
<configuration>
<warFile>path/to/my/warFile2.war</warFile>
</configuration>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
...
</build>
...
</project>
Вариант 2: Вероятно, это лучший подход. Определите одно выполнение в каждой войне (вы можете опустить элемент warFile, поскольку можно использовать значение по умолчанию). Затем вы можете определить третий проект с объявлением модулей, ссылающимся на каждый военный проект. Когда родительский объект будет построен, будут построены обе войны и развернуты войны.
Объявление модулей для третьего проекта:
<modules>
<module>relative/path/to/war1</module>
<module>relative/path/to/war2</module>
<modules>
И конфигурация для каждого военного проекта:
<project>
...
<build>
...
<plugins>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<version>1.0-beta-1</version>
<executions>
<execution>
<id>deploy</id>
<phase>pre-integration-test</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
...
</plugins>
...
</build>
...
</project>
Maven имеет некоторые свойства, которые вы можете использовать, чтобы избежать абсолютные пути.
${maven.repo.local} will resolve to the local repository
${project.basedir} is the project directory (the root of the project)
${project.build.directory} is the build directory (default is "target")
${project.build.outputDirectory} is the directory where compilation output goes (default is "target/classes")
вы можете создать "супервойну" и развернуть ее, а также