blob: 3de7814f4ddebae240125f566f67e6d85bde5fea [file] [log] [blame]
<!DOCTYPE html>
<!--
| Generated by Apache Maven Doxia Site Renderer 1.9.1 from src/site/markdown/BuildProperties.md at 2019-10-21
| Rendered using Apache Maven Fluido Skin 1.8
-->
<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.9.1" />
<title>Tycho &#x2013; Build Properties</title>
<link rel="stylesheet" href="./css/apache-maven-fluido-1.8.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.8.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: 2019-10-21<span class="divider">|</span>
</li>
<li id="projectVersion">Version: 1.5.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="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 class="active"><a href="#"><span class="none"></span>Build Properties</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="TychoProperties.html" title="Tycho Properties"><span class="none"></span>Tycho Properties</a></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 build.properties 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&#x2019;s legacy/deprecated</li>
<li>it doesn&#x2019;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&#x2019;s a missing feature</li>
</ul>
<p>In addition to PDE, Tycho supports using maven property expressions like ${project.version} in build.properties 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 build.properties 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>bin.includes </td>
<td> supported</td></tr>
<tr class="a">
<td>bin.excludes </td>
<td> supported</td></tr>
<tr class="b">
<td>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>forceContextQualifier </td>
<td> supported</td></tr>
<tr class="b">
<td>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>source.library </td>
<td> supported</td></tr>
<tr class="a">
<td>output.library </td>
<td> not supported - compiler output goes to ${project.build.outputDirectory} (usually target/classes) for main jar and target/nestedjar-classes for nested jars</td></tr>
<tr class="b">
<td>exclude.library </td>
<td> not supported</td></tr>
<tr class="a">
<td>extra.library </td>
<td> supported</td></tr>
<tr class="b">
<td>manifest.library </td>
<td> supported</td></tr>
<tr class="a">
<td>src.includes </td>
<td> supported</td></tr>
<tr class="b">
<td>src.excludes </td>
<td> supported</td></tr>
<tr class="a">
<td>jars.extra.classpath </td>
<td> only supported in the form platform:/plugin/&lt;Bundle-SymbolicName&gt;[/path/to/nested/jar]</td></tr>
<tr class="b">
<td>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>jre.compilation.profile </td>
<td> supported</td></tr>
<tr class="a">
<td>javacSource </td>
<td> supported</td></tr>
<tr class="b">
<td>javacTarget </td>
<td> supported</td></tr>
<tr class="a">
<td>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>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>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>javacDefaultEncoding.library </td>
<td> supported</td></tr>
<tr class="a">
<td>javacCustomEncodings.library </td>
<td> not supported</td></tr>
<tr class="b">
<td>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>compilerArg </td>
<td> not supported. Use <a href="tycho-compiler-plugin/compile-mojo.html#compilerArgs">compilerArgs</a> instead</td></tr>
<tr class="b">
<td>compilerAdapter </td>
<td> not supported. Use <a href="tycho-compiler-plugin/compile-mojo.html#compilerId">compilerId</a> instead</td></tr>
<tr class="a">
<td>compilerAdapter.useLog </td>
<td> not supported</td></tr>
<tr class="b">
<td>compilerAdapter.useArgFile </td>
<td> not supported</td></tr>
<tr class="a">
<td>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>root </td>
<td> supported</td></tr>
<tr class="a">
<td>root.config </td>
<td> supported</td></tr>
<tr class="b">
<td>root.folder </td>
<td> supported (since Tycho 0.27.0)</td></tr>
<tr class="a">
<td>root.config.folder </td>
<td> supported (since Tycho 0.27.0)</td></tr>
<tr class="b">
<td>root.permissions </td>
<td> supported</td></tr>
<tr class="a">
<td>root.link </td>
<td> supported</td></tr>
<tr class="b">
<td>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>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>significantVersionDigits </td>
<td> not supported</td></tr>
<tr class="a">
<td>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>Copyright &#169; 2008&#x2013;2019<a href="http://www.eclipse.org/">Eclipse Foundation</a>.
.</p>
</div>
</div>
</footer>
</body>
</html>