blob: 3d5e7cbb0a571f9e58c53e62537f3263df6c6094 [file] [log] [blame]
//////////////////////
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
//////////////////////
[[core-runtime,Core Runtime]]
= Core Runtime =
[devstatus]
--------------
source=core/runtime/dev-status.xml
--------------
First of all, your code should never, ever, have a dependency on Core Runtime. If you think you need this, you should
probably contact users@zest.apache.org mailing list and see if your usecase can either be solved in a existing way or
perhaps that a new Core SPI Extension is needed.
include::../../build/docs/buildinfo/artifact.txt[]
Let's repeat that; *Never, never, ever depend on Core Runtime*. Make sure that the compile dependency does NOT include
the `org.apache.zest.core.runtime` jar.
== Custom AssemblyHelper ==
BUT, there are super-rare cases, where a custom AssemblyHelper might be needed. One known use-case is tp introduce
an alternative bytecode generation algorithm, either better than the one we have, or for a different system, such
as Dalvik.
To do this, add the +AssemblyHelper+ implementation instance as +metaInfo+ to the +ApplicationAssembly+
We think this is so rare, that the +AssemblyHelper+ class will remain in the +core/runtime+ module and has not
been promoted to the +core/bootstrap+ module. If you plan to use this feature, please contact the Zest development
team at +dev@zest.apache.org+ to ensure we can make this a better supported, backed by real usecases.
Fictitious example of using a hypothetical Dalvik capable classloader;
[source,java]
--------------
source=core/runtime/src/test/java/org/apache/zest/runtime/bootstrap/DocumentationSupport.java
tag=customAssemblyHelper
--------------