blob: bbe468e055719a03fdcd09c00656340fad560731 [file] [log] [blame]
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia Site Renderer 1.11.1 from src/site/markdown/BuildProperties.md at 2022-02-28
| Rendered using Apache Maven Fluido Skin 1.10.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="generator" content="Apache Maven Doxia Site Renderer 1.11.1" />
<title>Tycho &#x2013; Build Properties</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.10.0.min.css" />
<link rel="stylesheet" href="./css/site.css" />
<link rel="stylesheet" href="./css/print.css" media="print" />
<script src="./js/apache-maven-fluido-1.10.0.min.js"></script>
</head>
<body class="topBarDisabled">
<div class="container-fluid">
<header>
<div id="banner">
<div class="pull-left"><div id="bannerLeft"><h2>Tycho</h2>
</div>
</div>
<div class="pull-right"></div>
<div class="clear"><hr/></div>
</div>
<div id="breadcrumbs">
<ul class="breadcrumb">
<li id="publishDate">Last Published: 2022-02-28<span class="divider">|</span>
</li>
<li id="projectVersion">Version: 2.7.0</li>
</ul>
</div>
</header>
<div class="row-fluid">
<header id="leftColumn" class="span2">
<nav class="well sidebar-nav">
<ul class="nav nav-list">
<li class="nav-header">Tycho</li>
<li><a href="index.html" title="Introduction"><span class="none"></span>Introduction</a></li>
<li><a href="target-platform-configuration/plugin-info.html" title="Target Platform Configuration"><span class="none"></span>Target Platform Configuration</a></li>
<li><a href="tycho-compiler-plugin/plugin-info.html" title="Compiler Plugin"><span class="none"></span>Compiler Plugin</a></li>
<li><a href="tycho-packaging-plugin/plugin-info.html" title="Packaging Plugin"><span class="none"></span>Packaging Plugin</a></li>
<li><a href="tycho-surefire-plugin/plugin-info.html" title="Surefire Plugin"><span class="none"></span>Surefire Plugin</a></li>
<li><a href="tycho-p2/tycho-p2-publisher-plugin/plugin-info.html" title="p2 Publisher Plugin"><span class="none"></span>p2 Publisher Plugin</a></li>
<li><a href="tycho-p2/tycho-p2-repository-plugin/plugin-info.html" title="p2 Repository Plugin"><span class="none"></span>p2 Repository Plugin</a></li>
<li><a href="tycho-p2/tycho-p2-director-plugin/plugin-info.html" title="p2 Director Plugin"><span class="none"></span>p2 Director Plugin</a></li>
<li><a href="tycho-source-plugin/plugin-info.html" title="Source Plugin"><span class="none"></span>Source Plugin</a></li>
<li><a href="tycho-release/tycho-versions-plugin/plugin-info.html" title="Versions Plugin"><span class="none"></span>Versions Plugin</a></li>
<li><a href="tycho-pomgenerator-plugin/plugin-info.html" title="POM Generator Plugin"><span class="none"></span>POM Generator Plugin</a></li>
<li><a href="" title="Properties"><span class="icon-chevron-down"></span>Properties</a>
<ul class="nav nav-list">
<li class="active"><a href="#"><span class="none"></span>Build Properties</a></li>
<li><a href="TychoProperties.html" title="Tycho Properties"><span class="none"></span>Tycho Properties</a></li>
</ul></li>
<li class="nav-header">Tycho Extras</li>
<li><a href="tycho-extras/index.html" title="Introduction"><span class="none"></span>Introduction</a></li>
<li><a href="tycho-extras/tycho-p2-extras-plugin/plugin-info.html" title="P2 Extras Plugin"><span class="none"></span>P2 Extras Plugin</a></li>
<li><a href="tycho-extras/target-platform-validation-plugin/plugin-info.html" title="Target Platform Validation Plugin"><span class="none"></span>Target Platform Validation Plugin</a></li>
<li><a href="tycho-extras/tycho-eclipserun-plugin/plugin-info.html" title="Eclipserun Plugin"><span class="none"></span>Eclipserun Plugin</a></li>
<li><a href="tycho-extras/tycho-document-bundle-plugin/plugin-info.html" title="Document Bundle Plugin"><span class="none"></span>Document Bundle Plugin</a></li>
<li><a href="tycho-extras/tycho-source-feature-plugin/plugin-info.html" title="Source Feature Generation Plugin"><span class="none"></span>Source Feature Generation Plugin</a></li>
<li><a href="tycho-extras/tycho-pack200/index.html" title="Pack200 Plugins"><span class="icon-chevron-down"></span>Pack200 Plugins</a>
<ul class="nav nav-list">
<li><a href="tycho-extras/tycho-pack200/tycho-pack200a-plugin/plugin-info.html" title="Normalization Plugin"><span class="none"></span>Normalization Plugin</a></li>
<li><a href="tycho-extras/tycho-pack200/tycho-pack200b-plugin/plugin-info.html" title="Pack Plugin"><span class="none"></span>Pack Plugin</a></li>
</ul></li>
</ul>
</nav>
<div class="well sidebar-nav">
<hr />
<div id="poweredBy">
<div class="clear"></div>
<div class="clear"></div>
<div class="clear"></div>
<a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" /></a>
</div>
</div>
</header>
<main id="bodyColumn" class="span10" >
<section>
<h2><a name="Build_Properties"></a>Build Properties</h2>
<p>Tycho uses the <code>build.properties</code> file <a class="externalLink" href="http://help.eclipse.org/luna/index.jsp?topic=/org.eclipse.pde.doc.user/reference/pde_feature_generating_build.htm">as defined by PDE</a> to configure various aspects of the build.</p>
<p>Note that Tycho only supports a subset of keys defined by PDE. If a key is not supported, this may be because</p>
<ul>
<li>it's legacy/deprecated</li>
<li>it doesn't fit into the maven project model or the way maven is generally expected to work</li>
<li>there are other ways to achieve the desired configuration (e.g. using pom.xml)</li>
<li>it's a missing feature</li>
</ul>
<p>In addition to PDE, Tycho supports using maven property expressions like <code>${project.version}</code> in <code>build.properties</code> values. Note that these expressions will only be replaced in a Tycho build, not when using the eclipse IDE incremental build.<br />
See the table below for which keys in <code>build.properties</code> defined by PDE are supported by Tycho or if not, whether there are alternatives when using Tycho.</p><section>
<h3><a name="Common_Properties"></a>Common Properties</h3>
<table border="0" class="table table-striped">
<thead>
<tr class="a">
<th>Key</th>
<th>Value</th></tr>
</thead><tbody>
<tr class="b">
<td align="left">bin.includes</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">bin.excludes</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">qualifier</td>
<td>not supported - use <a href="tycho-packaging-plugin/build-qualifier-mojo.html">Build Qualifer Mojo</a> instead</td></tr>
<tr class="a">
<td align="left">forceContextQualifier</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">custom*</td>
<td>not supported</td></tr>
</tbody>
</table></section><section>
<h3><a name="Plugin-specific_properties"></a>Plugin-specific properties</h3>
<table border="0" class="table table-striped">
<thead>
<tr class="a">
<th>Key</th>
<th>Value</th></tr>
</thead><tbody>
<tr class="b">
<td align="left">source.library</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">output.library</td>
<td>not supported - compiler output goes to <code>${project.build.outputDirectory}</code> (usually <code>target/classes</code>) for main jar and <code>target/nestedjar-classes</code> for nested jars</td></tr>
<tr class="b">
<td align="left">exclude.library</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">extra.library</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">manifest.library</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">src.includes</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">src.excludes</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">jars.extra.classpath</td>
<td>only supported in the form <code>platform:/plugin/&lt;Bundle-SymbolicName&gt;[/path/to/nested/jar]</code></td></tr>
<tr class="b">
<td align="left">jars.compile.order</td>
<td>supported</td></tr>
</tbody>
</table></section><section>
<h3><a name="Compiler-specific_properties"></a>Compiler-specific properties</h3>
<table border="0" class="table table-striped">
<thead>
<tr class="a">
<th>Key</th>
<th>Value</th></tr>
</thead><tbody>
<tr class="b">
<td align="left">jre.compilation.profile</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">javacSource</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">javacTarget</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">bootClasspath</td>
<td>not supported - use <a href="tycho-compiler-plugin/compile-mojo.html#useJDK">maven toolchains</a> instead</td></tr>
<tr class="b">
<td align="left">javacWarnings.library</td>
<td>not supported - use <a class="externalLink" href="https://wiki.eclipse.org/Tycho/FAQ#How_to_configure_warning.2Ferror_settings_of_the_OSGi_compiler.3F">compilerArgument</a> instead.</td></tr>
<tr class="a">
<td align="left">javacErrors.library</td>
<td>not supported - use <a class="externalLink" href="https://wiki.eclipse.org/Tycho/FAQ#How_to_configure_warning.2Ferror_settings_of_the_OSGi_compiler.3F">compilerArgument</a> instead.</td></tr>
<tr class="b">
<td align="left">javacDefaultEncoding.library</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">javacCustomEncodings.library</td>
<td>not supported</td></tr>
<tr class="b">
<td align="left">javacProjectSettings</td>
<td>not supported. Use <a href="tycho-compiler-plugin/compile-mojo.html#useProjectSettings">useProjectSettings</a> or <a href="tycho-compiler-plugin/compile-mojo.html#compilerArgs">compilerArgs</a> instead.</td></tr>
<tr class="a">
<td align="left">compilerArg</td>
<td>not supported. Use <a href="tycho-compiler-plugin/compile-mojo.html#compilerArgs">compilerArgs</a> instead</td></tr>
<tr class="b">
<td align="left">compilerAdapter</td>
<td>not supported. Use <a href="tycho-compiler-plugin/compile-mojo.html#compilerId">compilerId</a> instead</td></tr>
<tr class="a">
<td align="left">compilerAdapter.useLog</td>
<td>not supported</td></tr>
<tr class="b">
<td align="left">compilerAdapter.useArgFile</td>
<td>not supported</td></tr>
<tr class="a">
<td align="left">sourceFileExtensions</td>
<td>not supported - use <a href="tycho-compiler-plugin/compile-mojo.html#excludeResources">excludeResources</a> instead</td></tr>
</tbody>
</table></section><section>
<h3><a name="Feature-specific_properties"></a>Feature-specific properties</h3>
<table border="0" class="table table-striped">
<thead>
<tr class="a">
<th>Key</th>
<th>Value</th></tr>
</thead><tbody>
<tr class="b">
<td align="left">root</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">root.config</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">root.folder</td>
<td>supported (since Tycho 0.27.0)</td></tr>
<tr class="a">
<td align="left">root.config.folder</td>
<td>supported (since Tycho 0.27.0)</td></tr>
<tr class="b">
<td align="left">root.permissions</td>
<td>supported</td></tr>
<tr class="a">
<td align="left">root.link</td>
<td>supported</td></tr>
<tr class="b">
<td align="left">generate.feature</td>
<td>not supported - use <a class="externalLink" href="https://www.eclipse.org/tycho/sitedocs-extras/tycho-source-feature-plugin/plugin-info.html">Tycho Source Feature Plugin</a> instead</td></tr>
<tr class="a">
<td align="left">generate.plugin</td>
<td>not supported - use <a href="tycho-source-plugin/plugin-info.html">Tycho Source Plugin</a> instead</td></tr>
<tr class="b">
<td align="left">significantVersionDigits</td>
<td>not supported</td></tr>
<tr class="a">
<td align="left">generatedVersionLength</td>
<td>not supported</td></tr>
</tbody>
</table></section></section>
</main>
</div>
</div>
<hr/>
<footer>
<div class="container-fluid">
<div class="row-fluid">
<p>&#169; 2008&#x2013;2022
<a href="http://www.eclipse.org/">Eclipse Foundation</a>
</p>
</div>
</div>
</footer>
<script>
if(anchors) {
anchors.add();
}
</script>
</body>
</html>