tree a5a86b7572adb8715457dc07db477b8d22a5ce9d
parent b7932cab2a602cd78b928b7dd2376969de9ab8e2
author Ron Clabo <rclabo@users.noreply.github.com> 1624291988 -0400
committer GitHub <noreply@github.com> 1624291988 -0400
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJg0LqUCRBK7hj4Ov3rIwAA35MIAKq8dWG+sbFtvAb+M3wvXv5r
 8VBhy+9jOSVD4MeXBAvq4Eaq4qDsRZ9oNn7MYr5svOwKzi1DQo/7VBFhbxKRZh7K
 rgciHLFBD3ZNlFhErxEXN23WusGnb7ZIeP8WXivc9o5aQ47HDe+OWDDbN+A1m4Ep
 h8SmMbGPKkio7FyTw8XDN4UK5w/iIm5uInpblJzVGB5E6pftwUit+qxAcKaRgO8z
 yXzwxuM/t9HlU9EA82m1ob5Us+8MaeRO4FHeMLPDfn6TmMMRiDX8SXpjA3aqYer6
 NDkE7vRUlXfcjW0kQHIM3Vwh3nYZ0yxU56+Y0ON+J22EbHQm+HKNJHm9Vfo/3ao=
 =apYb
 -----END PGP SIGNATURE-----
 

Added and images folder to house images used in static file content. (#20)

* Added an images folder to house images used in static file content.
Since the static https://lucenenet.apache.org/  website is always hosted based on the files in the asf-site branch which is located at https://github.com/apache/lucenenet-site/tree/asf-site it is convenient to place images in the asf-site branch at https://github.com/apache/lucenenet-site/tree/asf-site/images/ once these images are propagates to https://lucenenet.apache.org they can be included in markdown files by using fully qualified image references like https://lucenenet.apache.org/images/my-image.jpg  The advantage of this approach is that when running the DocFx build process on a local dev machine, the static output will be able to render the images handled in this way.

Also added an images/java-lucene-4_8-setup/ folder with lots of images which will be used in a future static page that details how to get Java Lucene 4.8 up and running in a development environment.
