Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
Before you start you must make sure that you have the following software is installed and properly configured (i.e. runnables are on system path and you can run them from command line).
Software Recommended version Check runnable Where to get it 
Java SDK 1.8.x+ java -version http://www.oracle.com/technetwork/java/javase/downloads/index.html
NodeJS 8.x.x+node --versionhttps://nodejs.org/en/download/
NPM 6.4.1+npm -versionhttps://www.npmjs.com
Maven v.3.0+ mvn -version http://maven.apache.org/download.html
Ant v.1.8+ ant -version http://ant.apache.org/bindownload.cgi
Ant contrib v.1.0b+  http://ant-contrib.sourceforge.net
Tomcat v.7+  http://tomcat.apache.org
MySQL v.5.5+ mysql http://dev.mysql.com/downloads/
Tip

If you are running *nix please consult your OS documentation for the installation procedures of the above software. We would not recommend installing it manually. For example Mac OSX users are strongly advised to you macports as installation shell.

Nice to have Notes 
Intellij IDEA Ultimate Ultimate is required for Flex support 
Http server configurable for ajp 1.3 If you would like to mirror production setup locally 
TOAD or MySQL query browser If you plan to use mysql then GUI client would help 

Environment variables

 

Environment Variables Required Example value Notes 
JAVA_HOME (tick)D:\jdk1.8.0_45  
JAVA_OPTS  -Xms256m -Xmx1024m Required as Tomcat may fail with OutOfMemory exception 
ANT_HOME (tick) D:\apache-ant-1.8.1  
ANT_OPTS  -Xms256m -Xmx1024m  
M2_HOME (tick) D:\apache-maven-3.0.3  
MAVEN_OPTS (tick) -Xms256m -Xmx1024m Required as test may fail with OutOfMemory exception 
CATALINA_OPTS  -Dfile.encoding=UTF-8 Required by Tomcat to correctly process UTF-8 requests 
PATH   should contain all executables for the installed software 

  

Tip
You can check Environment variables from shell (*nix) by using "./yc.sh env" or cmd (Windows) by using "yc.bat env".

...

Info
When working with maven if you specify at least one profile then activation by default stops working for other profiles. Hence you may need to specify all default profiles in some cases.
Profile Alternative Default Dependency1Affected module Version Notes 
dev    jam, yes-shop, yes-api 3.0.0+ synonym for -Denv=dev 
devIntellijIDEA    jam, yes-shop, yes-api 3.0.0+ synonym for -Denv=dev-idea 
buildInstaller    installer 3.0.0+ Includes installer module in the build 
derby mysql (tick)(tick) jam, yes-shop, yes-api 3.0.0+ Sets derby connector for hibernate 
mysql derby  (tick) jam, yes-shop, yes-api 3.0.0+ Sets mysql connector for hibernate 
ftEmbededLucene  ftDisabled(tick) (tick) yes-shop, yes-api 3.5.0+Enables Lucene to be full text search provider for storefront
ftDisabledftEmbededLucene  yes-shop, yes-api 3.5.0+NOOP full text search provider for storefront (used for builds that use external CMS + external FT provider)
nodejs (warning)     jam-jsclient3.3.0+

(warning) Used for JAM client development with validate phase to update currently running instance. Usage is from within specific module:

Code Block
yes-cart/manager/jam$ mvn validate -Pdev,nodejs,derby,ftEmbededLucene

(warning) Use this profile for supporting IDE builds to copy extra resources that IDE does not "see".

ssl    jam, yes-shop, yes-api 3.0.0+ Sets secure configurations for wicket (enabled security, guarantee CONFIDENTIAL) and sets up default secure and insecure ports (8443, 8080). If not used then "behind Apache" mode is assumed (disables security, guarantee NONE), default secure and insecure ports (443, 80). 
templates (warning)    jam, yes-shop, yes-api 3.0.0+ 

 (warning) DO NOT use for full builds. This profile allows to manually copy all necessary templates to relevant module. Usage is from within specific module:

Code Block
yes-cart/manager/jam$ mvn validate -Ptemplates,derby,ftEmbededLucene

(warning) Use this profile for supporting IDE builds to copy extra resources that IDE does not "see". 

paymentBase paymentAll (tick)(tick) payment modules 3.0.0+ Disabled all additional payment modules 
paymentAll paymentBase  (tick)payment modules3.0.0+ Enables all additional payment modules 
paymentLiqPay paymentLiqPayOff  (tick) payment modules3.0.0+ Enables LiqPay additional payment module 
paymentLiqPayOff paymentLiqPay  (tick)payment modules3.0.0+ Disables LiqPay additional payment module 
paymentCybersource paymentCybersourceOff  (tick) payment modules 3.0.0+ Enables Cybersource additional payment module 
paymentCybersourceOff paymentCybersource  (tick)payment modules 3.0.0+ Disables Cybersource additional payment module 
paymentAuthorize paymentAuthorizeOff  (tick)payment modules3.0.0+ Enables Authorize.NET additional payment module 
paymentAuthorizeOff paymentAuthorize  (tick)payment modules3.0.0+ Disables Authorize.NET additional payment module 
paymentPaypal paymentPaypalOff  (tick) payment modules3.0.0+ Enables PayPal additional payment module (PayPal NVP, Payflow and Express) 
paymentPaypalOff paymentPaypal   paymentmodules3.0.0+ Disables PayPal additional payment module (PayPal NVP, Payflow and Express) 

1 Dependency profiles are used to inject additional Maven dependencies during build. If at least one Maven profile is specified in build command all applicable dependency profiles must be explicitly stated. For example "mysql" profile adds MySQL driver jar file to WEB-INF/lib thus if we use "-PdevIntellijIDEA" we need to use either "-PdevIntellijIDEA,mysql" or "-PdevIntellijIDEA,derby" to add either MSQL or Derby driver. Note that all jar files are preserved between builds in WEB-INF/lib unless a "mvn clean install" is performed

...

Tip
If you encounter java.security.AccessControlException: access denied ("java.net.SocketPermission" "localhost:1527" "listen,resolve") refer to Derby quick startguide.

 

Navigate to YC_HOME from command line and startup Derby server (in background mode)

...

Tip
If you experience problems, try to setup databases manually.

MySQL

 

Make sure your MySQL server is running (try connecting to it through command line 'mysql' command)

...

Tip
 If you experience problems, try to setup databases manually.

Other RDBMS's and configuring existing

...

Tip
If you are setting up tomcat from scratch please have a look at some things on our Tomcat page that you should be aware of.

...

Default user/password to connect is:

username admin@yes-cart.com 
password 1234567 

Or use REST client to access API:

http://localhost:8080/yes-api/

IDE setup

 

Intellij IDEA

Import demo data

 

Follow steps on Demo Data Import