2. Eclipse
• Darwino Studio update site
• Third-party tools:
– Android Development Toolkit
• Or, better, its replacement: Andmore
• Prepare for a huge download to get the SDKs needed
– MOE
• Current URL (subject to change): https://dl.bintray.com/multi-os-engine/eclipse/
– M2e Connectors (should be automatic)
• The Android connector will prompt for ADT if Andmore is present, but this can be
skipped
• If not automatic, use “Discover m2e Connectors” as a problem solution in a pom.xml
3. Maven
• Maven is the project configuration tool of choice for Darwino
• More on the layout of the internal projects in the next session
• Maven manages dependencies on the base platform as well as to third-party
dependencies and internal parts of the project
• Dealing with Maven can get… complicated, but a normal Darwino project
avoids the worst of it
• Phased building: generate sources, compile, test, etc.
• Build plugins: expand the capabilities of Maven, hook into build phases, add
pre/post-build tasks
4. Maven
• In ~/.m2/settings.xml:
• Darwino Maven site
– Username and encrypted password
• Android SDK path
<properties>
<android.sdk.path>/path/to/android-sdks</android.sdk.path>
</properties>
<repository>
<id>maven.darwino.com</id>
<name>maven.darwino.com-releases</name>
<url>https://maven.darwino.com/darwino-enterprise-edition</url>
</repository>
5. Tomcat
• Useful for J2EE projects (WebSphere Liberty and Bluemix can also work)
• http://tomcat.apache.org (we’ve been using Tomcat 8.0.x)
• Add as a Server in Eclipse to publish J2EE projects to it inline
• Modify darwino-beans.xml and darwino.properties in its install directory
– See example beans and properties files in the Darwino distribution
6. PostgreSQL
• Many SQL servers work, but Postgres is open-source and very capable
• https://www.postgresql.org (we’ve been using 9.5.x)
• Can install locally or remotely
– A local install is very low-overhead, and works great on a dev machine
• Use pgAdmin III (packaged) to administer
8. Domino and Connections Configuration
• Darwino Studio has a couple features that help integrate with Domino and
Connections
– Connections Cloud app management and widget deployment
– Domino UI analysis for generation
• Configure in Eclipse preferences, in the Darwino category
10. Application Wizard
• Creates a two-level tree of Maven
projects
• One project per platform+type
pair
• One common “mobile” project
• One common “webui” project
• One common “shared” project
11. Project Organization
• The “shared” project is the go-to location for most code:
– Custom REST services
– Task definitions
– Model objects
– Even potential abstract UI logic
• The “webui” project is primarily for static files, such as an Angular app
• The individual platform projects should ideally contain just “shims” to get the
app running (for a hybrid) or only platform-specific UI code
12. 2.0 Beta Feature: Darwino UI
• Darwino UI is an abstract expression of common UI elements:
– Forms
– Views
– Navigators (think Notes Outlines)
• Starting point for developing a UI: the elements describe the basics, and
then the Studio generates code in a target UI toolkit, which can then be
customized
13. Darwino UI: Import From Server
• Mechanism for importing app design from a supported server
– Currently, Domino is the supported server, but the protocol is designed to be
platform-neutral
• Import basic information about forms, views, and outlines from an NSF
• Intended to be a starting point: does not (currently) include form layout,
complicated view designs, or so forth